可以使用initcap()函数将首字母转为大写,如:select INITCAP('abcd') from dual;也可以使用截取替换的方式实现
/*
version: 1.0
createdtime: 2007-01-08
creator: 走过四季
memo: for my lover[hjm]
举列:将用户表〔tbluser〕中〔username〕字段的每个单词首字母大写:
update tbluser set username=dbo.f_Trans(username)
提示:如需使用,请保留以上说明
*/
create function f_Trans(@col varchar(2000))
returns varchar(2000)
as
begin
set @col=replace(@col,' ',' ')
set @col=replace(@col,',','**,')
set @col=replace(@col,' ',',')
declare @sql varchar(2000)
set @sql=''
while charindex(',',@col)>0
select @sql=@sql+upper(left(@col,1))+LOWER(replace(substring(@col,2,charindex(',',@col)-1),',',' ')),
@col=substring(@col,charindex(',',@col)+1,len(@col)-charindex(',',@col))
set @sql=@sql+upper(left(@col,1)) + replace(LOWER(right(@col,len(@col)-1)),',',' ')
set @sql=replace(@sql,'** ',',')
set @sql=replace(@sql,',,',', ')
return(@sql)
end
go
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。