字符串函數對二進制數據、字符串和表達式執行不同的運算。此類函數作用於CHAR、VARCHAR、 BINARY、 和VARBINARY 數據類型以及可以隱式轉換爲CHAR 或VARCHAR的數據類型。
一、字符轉換函數
1、ASCII()與CHAR()
select ASCII('asd')
select CHAR(97)
select CHAR(129) --char()範圍0-128
select Unicode('asd')
select NCHAR(97)
select NCHAR(65536) --char()範圍0-65535
select STR(1.11111,2) --返回值 1,當返回的字符串位數小於length ,左邊補足空格
select STR(11.1111,2) --返回值*,當length 小於小數點左邊的位數時,返回length 個*
select STR(1.11111,-1,2) --返回值NULL,當length 或者decimal 爲負值時,返回NULL
select STR(1.11111,3,2) --返回值1.1,先服從length ,再取decimal
select LEFT('abcd',6) --返回值爲abcd
select LEFT('abcd',2) --返回值爲ab
select RIGHT('abcd',6) --返回值爲abcd
select RIGHT('abcd',2) --返回值爲cd
select SUBSTRING('abcd',1,2) --返回值爲ab
select SUBSTRING('abcd',0,2) --返回值爲a
select SUBSTRING('abcd',0,1) --返回值爲空
select SUBSTRING('abcd',-1,2) --返回值爲空
select SUBSTRING('abcd',-1,3) --返回值爲a
select CHARINDEX('ab','abcd') --返回值爲1
select PATINDEX('%ab%','abcd') --返回值爲1
select QUOTENAME('abcd','{}') --返回值爲{abcd}
select QUOTENAME('abcd') --返回值爲[abcd]
select REPLICATE('abcd',2) --返回值爲abcdabcd
select REPLICATE('abcd',0) --返回值爲空,若爲負值,則返回NULL
select REVERSE('abcd') --返回值爲dcba
select REPLACE('abcd','ab','e') --返回值爲ecd
select REPLACE(SPACE(2),' ','a')--返回值爲aa
select SPACE(2) --返回值爲兩個空格
select STUFF('abcd',3,2,'ef') --返回值爲abef
select STUFF('abcd',5,2,'ef') --返回值爲NULL,起始位置(5)大於character_expression1(abcd) 的長度,則返回NULL 值
select STUFF('abcd',1,5,'ef') --返回值爲ef