MSSQL 首字母替換成大寫字母
更新時間:2009年09月21日 18:39:01 作者:
MSSQL將首字母替換成大寫的實現(xiàn)語句,需要的朋友可以參考下。
--使用程序塊
-->Title:生成測試數(shù)據(jù)
-->Author:wufeng4552
-->Date :2009-09-21 13:40:59
declare @s varchar(8000)
set @s=lower(@@version)
select @s
/*
microsoft sql server 2005 - 9.00.4035.00 (intel x86)
nov 24 2008 13:01:59
copyright (c) 1988-2005 microsoft corporation
enterprise edition on windows nt 5.2 (build 3790: service pack 2)
(1 個資料列受到影響)
*/
declare @i int,@j int
select @i=1,@j=len(@j)
while charindex(' ',' '+@s,@i)>0
begin
set @I=charindex(' ',' '+@s,@i)+1
if @i>@j continue
set @s=stuff(@s,@i-1,1,upper(substring(@s,@i-1,1)))
end
select @s
/*
Microsoft Sql Server 2005 - 9.00.4035.00 (intel X86)
nov 24 2008 13:01:59
copyright (c) 1988-2005 Microsoft Corporation
enterprise Edition On Windows Nt 5.2 (build 3790: Service Pack 2)
(1 個資料列受到影響)
*/
----使用函數(shù)
-->Title:生成測試數(shù)據(jù)
-->Author:wufeng4552
-->Date :2009-09-21 13:40:59
if object_id('F_split')is not null drop function dbo.F_split
go
create function F_split(@s nvarchar(1000))
returns nvarchar(1000)
as
begin
declare @str nvarchar(1000),@split nvarchar(100)
select @s=@s+' ',@str=''
while charindex(' ',@s)>0
begin
set @split=left(@s,charindex(' ',@s))
set @str=@str+upper(left(@split,1))+right(@split,len(@split))
set @s=stuff(@s,1,charindex(char(32),@s),'')
end
return @str
end
go
declare @s varchar(1000)
set @s=lower(@@version)
select dbo.F_split(@s)
/*
Microsoft Sql Server 2005 - 9.00.4035.00 (intel X86)
nov 24 2008 13:01:59
copyright (c) 1988-2005 Microsoft Corporation
enterprise Edition On Windows Nt 5.2 (build 3790: Service Pack 2)
*/
--3借住系統(tǒng)表,或臨時表
-->Title:生成測試數(shù)據(jù)
-->Author:wufeng4552
-->Date :2009-09-21 13:40:59
declare @str varchar(1000)
select @str=char(32)+lower(@@version)
select @str=replace(@str,char(32)+char(number),char(32)+char(number))
from master..spt_values
where type='p' and number between 65 and 90
select stuff(@str,1,1,'')
/*
Microsoft Sql Server 2005 - 9.00.4035.00 (intel X86)
nov 24 2008 13:01:59
copyright (c) 1988-2005 Microsoft Corporation
enterprise Edition On Windows Nt 5.2 (build 3790: Service Pack 2)
(1 個資料列受到影響)
*/
-->Title:生成測試數(shù)據(jù)
-->Author:wufeng4552
-->Date :2009-09-21 13:40:59
declare @s varchar(8000)
set @s=lower(@@version)
select @s
/*
microsoft sql server 2005 - 9.00.4035.00 (intel x86)
nov 24 2008 13:01:59
copyright (c) 1988-2005 microsoft corporation
enterprise edition on windows nt 5.2 (build 3790: service pack 2)
(1 個資料列受到影響)
*/
declare @i int,@j int
select @i=1,@j=len(@j)
while charindex(' ',' '+@s,@i)>0
begin
set @I=charindex(' ',' '+@s,@i)+1
if @i>@j continue
set @s=stuff(@s,@i-1,1,upper(substring(@s,@i-1,1)))
end
select @s
/*
Microsoft Sql Server 2005 - 9.00.4035.00 (intel X86)
nov 24 2008 13:01:59
copyright (c) 1988-2005 Microsoft Corporation
enterprise Edition On Windows Nt 5.2 (build 3790: Service Pack 2)
(1 個資料列受到影響)
*/
----使用函數(shù)
-->Title:生成測試數(shù)據(jù)
-->Author:wufeng4552
-->Date :2009-09-21 13:40:59
if object_id('F_split')is not null drop function dbo.F_split
go
create function F_split(@s nvarchar(1000))
returns nvarchar(1000)
as
begin
declare @str nvarchar(1000),@split nvarchar(100)
select @s=@s+' ',@str=''
while charindex(' ',@s)>0
begin
set @split=left(@s,charindex(' ',@s))
set @str=@str+upper(left(@split,1))+right(@split,len(@split))
set @s=stuff(@s,1,charindex(char(32),@s),'')
end
return @str
end
go
declare @s varchar(1000)
set @s=lower(@@version)
select dbo.F_split(@s)
/*
Microsoft Sql Server 2005 - 9.00.4035.00 (intel X86)
nov 24 2008 13:01:59
copyright (c) 1988-2005 Microsoft Corporation
enterprise Edition On Windows Nt 5.2 (build 3790: Service Pack 2)
*/
--3借住系統(tǒng)表,或臨時表
-->Title:生成測試數(shù)據(jù)
-->Author:wufeng4552
-->Date :2009-09-21 13:40:59
declare @str varchar(1000)
select @str=char(32)+lower(@@version)
select @str=replace(@str,char(32)+char(number),char(32)+char(number))
from master..spt_values
where type='p' and number between 65 and 90
select stuff(@str,1,1,'')
/*
Microsoft Sql Server 2005 - 9.00.4035.00 (intel X86)
nov 24 2008 13:01:59
copyright (c) 1988-2005 Microsoft Corporation
enterprise Edition On Windows Nt 5.2 (build 3790: Service Pack 2)
(1 個資料列受到影響)
*/
相關(guān)文章
當master down掉后,pt-heartbeat不斷重試會導致內(nèi)存緩慢增長的原因及解決辦法
這篇文章主要介紹了當master down掉后,pt-heartbeat不斷重試會導致內(nèi)存緩慢增長的原因及解決辦法,需要的朋友可以參考下2016-10-10
SQL Server提示"選定的用戶擁有對象,所以無法除去該用戶”
今天在幫朋友弄一臺服務器的時候當我需要刪除一個數(shù)據(jù)庫里的用戶時,提示如下錯誤信息: "選定的用戶擁有對象,所以無法除去該用戶" 如何解決呢?2009-04-04
SQL Server中通過reverse取某個最后一次出現(xiàn)的符號后面的內(nèi)容(字符串反轉(zhuǎn))
昨天在項目中遇到了一個非常簡單的問題,需要把SQL Server數(shù)據(jù)庫中保存的一段路徑地址取出其文件名,但SQL Server又沒有現(xiàn)成的方法,最后在網(wǎng)上找到這樣的一個方法,原理是先將字符串反轉(zhuǎn),取出第一個/的位置,從頭進行截取后再次反轉(zhuǎn)2012-07-07
sql server 2012 備份集中的數(shù)據(jù)庫備份與現(xiàn)有的xxx數(shù)據(jù)庫不同
這篇文章主要介紹了sql server 2012 備份集中的數(shù)據(jù)庫備份與現(xiàn)有的xxx數(shù)據(jù)庫不同,需要的朋友可以參考下2016-07-07

