国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 數(shù)據(jù)庫(kù) > SQL Server > 正文

Sql Server函數(shù)全解(一)字符串函數(shù)

2024-08-31 00:54:36
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
Sql Server函數(shù)全解(一)字符串函數(shù)

字符串函數(shù)用于對(duì)字符和二進(jìn)制字符進(jìn)行各種操作

1.ASCII()函數(shù)

 ASCII(character_exPRession)函數(shù)用于返回字符串表達(dá)式中最左側(cè)的ASCII代碼值。參數(shù)character_expression必須是一個(gè)char或varchar類型的字符串表達(dá)式。 eg: select ASCII('s'),ASCII('sql'),ASCII('1');執(zhí)行結(jié)果如圖:字符's'的ASCII值為115,所以第一行和第二行返回結(jié)果相同,對(duì)于第三條語(yǔ)句中的純數(shù)字的字符串,可以不用單引號(hào)括起來(lái)。

2.CHAR()函數(shù)

 CHAR(integer_expression)函數(shù)將整數(shù)類型的ASCII值轉(zhuǎn)換為對(duì)應(yīng)的字符,integer_expression是一個(gè)介于0~255之間的整數(shù)。如果該整數(shù)表達(dá)式不在此范圍內(nèi),將返回null值。eg: select CHAR(115),CHAR(49);可以看到,這里返回的值與ASCII函數(shù)的返回值正好相反.

3.LEFT()函數(shù)

  LEFT(character_expression,integer_expression)函數(shù)返回字符串左邊開(kāi)始指定個(gè)數(shù)的字符串、字符或者二進(jìn)制數(shù)據(jù)表達(dá)式。character_expression是字符串表達(dá)式,可以是常量,變量或字段。integer_expression為整數(shù),指定character_expression將返回的字符數(shù)。 eg: select LEFT('football',4); 函數(shù)返回字符串“football”左邊開(kāi)始的長(zhǎng)度為4的子字符串,結(jié)果為“foot”,可見(jiàn)索引從1開(kāi)始。

4.RIGHT()函數(shù)

 與LEFT()函數(shù)相反,RIGHT(character_expression,integer_expression)返回字符串character_expression最右邊integer_expression個(gè)字符。eg: select RIGHT('football',4); 函數(shù)返回字符竄"football"右邊開(kāi)始的長(zhǎng)度為4的字符串,結(jié)果為“ball”,索引也是從1開(kāi)始的。

5.LTRIM()函數(shù)

  LTRIM(character_expression)用于除去字符串左邊多余的空格,字符數(shù)據(jù)表達(dá)式character_expression是一個(gè)字符串表達(dá)式,可以是常量,變量,也可以是字符字段或者二進(jìn)制數(shù)據(jù)列。eg: select '(' + ' book ' + ')', '(' +LTRIM( ' book ') + ')'; 對(duì)比兩個(gè)值,LTRIM只刪除字符串左邊的空格,右邊的空格不會(huì)被刪除.

6.RTRIM()函數(shù)

  RTRIM(character_expression)用于除去字符串右邊多余的空格,字符數(shù)據(jù)表達(dá)式character_expression是一個(gè)字符串表達(dá)式,可以是常量,變量,也可以是字符字段或者二進(jìn)制數(shù)據(jù)列。eg:  select '(' +' book ' +')','(' +RTRIM(' book ') +')'; 對(duì)比兩個(gè)值,LTRIM只刪除字符串右邊的空格,左邊的空格不會(huì)被刪除.

7.STR()函數(shù)

 STR(float_expression [ , length [ , decimal ] ])函數(shù)用于將數(shù)值數(shù)據(jù)轉(zhuǎn)換為字符數(shù)據(jù)。float_expression是一個(gè)帶有小數(shù)點(diǎn)的近似數(shù)字(float)數(shù)據(jù)類型的表達(dá)式。length表示總長(zhǎng)度。它包括小數(shù)點(diǎn)、符號(hào)、數(shù)字以及空格,默認(rèn)值為10。decimal指定小數(shù)點(diǎn)后的位數(shù),decimal必須小于或等于16。如果decimal大于16,則會(huì)截?cái)嘟Y(jié)果,使其保持小數(shù)點(diǎn)后有16為。eg: select STR(3141.59,6,1),STR(123.45,2,2) 第一條語(yǔ)句6個(gè)數(shù)字和一個(gè)小數(shù)點(diǎn)組成的數(shù)值3141.59轉(zhuǎn)換為長(zhǎng)度為6的字符串,數(shù)字的小數(shù)部分舍入為1個(gè)小數(shù)位,第二條語(yǔ)句中的表達(dá)式超出指定的總長(zhǎng)度時(shí),返回的字符串為指定長(zhǎng)度的兩個(gè)**。

8.字符串逆序的函數(shù)REVERSE()

 REVERSE(s)將字符串s反轉(zhuǎn),返回的字符串的順序和s的順序相反。 eg: select REVERSE('abc'); 由結(jié)果可以看到,字符串“abc”經(jīng)過(guò)REVERSE函數(shù)處理后,所有的字符串順序被反轉(zhuǎn),結(jié)果為“cba”;

9.計(jì)算字符串的長(zhǎng)度函數(shù)LEN(str)

 返回字符表達(dá)式中的字符數(shù)。如果字符串中包含前導(dǎo)空格和尾隨空格,則函數(shù)將它們包含在內(nèi)。LEN對(duì)相同的單字節(jié)和雙字節(jié)字符串返回相同的值。eg: select LEN('no'),LEN('日期'),LEN(12345); 可以看到,LEN函數(shù)在對(duì)待英文字符和漢字字符時(shí),返回的字符串長(zhǎng)度是相同的,一個(gè)漢字也算作一個(gè)字符。LEN函數(shù)在處理純數(shù)字也將其當(dāng)作字符串,但是純數(shù)字可以不實(shí)用引號(hào).

10.匹配字符串開(kāi)始位置的函數(shù)CHARINDEX(str1,str,[start])

 CHARINDEX(str1,str,[start])函數(shù)返回子字符串str1在字符串str中的開(kāi)始位置,start為搜索的開(kāi)始位置,如果指定start參數(shù),則從指定位置開(kāi)始搜索;如果不指定start參數(shù)或者指定為0或者負(fù)值,則從字符串開(kāi)始位置搜索。 eg: select CHARINDEX('a','banana'),CHARINDEX('a','banana',4), CHARINDEX('na','banana', 4);

 CHARINDEX('a','banana')返回字符串'banana'中子字符串‘a’ 第一次出現(xiàn)的位置,結(jié)果為2; CHARINDEX('a','banana',4)返回字符串'banana'中從第4個(gè)位置開(kāi)始子字符串‘a’的位置,結(jié)果為4; CHARINDEX('na','banana', 4)返回從第4個(gè)位置開(kāi)始子字符串‘na’第一次出現(xiàn)的位置,結(jié)果為5

11.SUBSTRING()函數(shù)

 SUBSTRING(value_expression,start_expression,length_expression)函數(shù)返回字符表達(dá)式,二進(jìn)制表達(dá)式,文本表達(dá)式或圖像表達(dá)式的一部分。 value_expression是character、binary、text、ntext或image表達(dá)式。 start_expression指定返回字符的起始位置的整數(shù)或表達(dá)式。如果start_expression小于0,或生成錯(cuò)誤并終止語(yǔ)句。如果 start_expression大于值表達(dá)式的字符數(shù),將返回一個(gè)零長(zhǎng)度的表達(dá)式。 length_expression是正整數(shù)或指定要返回的value_expression的字符數(shù)表達(dá)式。如果length_expression是負(fù)數(shù),會(huì)生成錯(cuò)誤并終止語(yǔ)句,如果start_expression與length_expression的總和大于value_expression中的字符數(shù),則返回整個(gè)值表達(dá)式。eg: select SUBSTRING ('breakfast'1,5), SUBSTRING('breakfast' , LEN('breakfast')/2, LEN('breakfast')); 第一條語(yǔ)句返回從第一個(gè)位置開(kāi)始長(zhǎng)度為5的字符串,結(jié)果為"break",第二條語(yǔ)句返回整個(gè)字符串的后半段字符串,結(jié)果為"akfast"

12.LOWER()

 LOWER(character_expression)將大寫(xiě)字符數(shù)據(jù)轉(zhuǎn)換為小寫(xiě)字符數(shù)據(jù)后返回字符表達(dá)式。character_expression是指定要進(jìn)行轉(zhuǎn)換的字符串。eg: select LOWER('BEAUTIFUL'),LOWER('Well');由結(jié)果可以看到,經(jīng)過(guò)LOWER()函數(shù)轉(zhuǎn)換之后,大寫(xiě)字母都變成小寫(xiě)了,小寫(xiě)字母保持不變.

13.UPPER()函數(shù)

 UPPER(character_expression)將小寫(xiě)字符數(shù)據(jù)轉(zhuǎn)換為大寫(xiě)字符數(shù)據(jù)后返回字符表達(dá)式。character_expression指定要進(jìn)行轉(zhuǎn)換的字符串。eg: select UPPER('black'),UPPER('Black'); 由結(jié)果可以看到,經(jīng)過(guò)UPPER函數(shù)轉(zhuǎn)換后,小寫(xiě)字母都變成了大寫(xiě),大寫(xiě)字母保持不變。

14.替換函數(shù)REPLACE(s,s1,s2)

 REPLACE(s,s1,s2)使用字符串s2替代字符串s中的s1. eg: select REPLACE('xxx.sqlserver2012.com','x','w'); EPLACE('xxx.sqlserver2012.com','x','w')將"xxx.sqlserver2012.com"字符串中的'x'替換為'w'字符,結(jié)果為"www.sqlserver2012.com";

上面例子的整體代碼:

--字符串函數(shù)--1.ASCII()函數(shù)select ASCII('s'),ASCII('sql'),ASCII(1);--2.CHAR()函數(shù)select CHAR(115),CHAR(49);--3.LEFT()函數(shù)select LEFT('football',4);--4.RIGHT()函數(shù)select RIGHT('football',4);--5.LTRIM()函數(shù)select '(' +'  book  ' +')','(' +LTRIM('  book  ') +')';--6.RTRIM()函數(shù)select '(' +'  book  ' +')','(' +RTRIM('  book  ') +')';--7.STR()函數(shù)select STR(3141.59,6,1),STR(123.45,2,2);--8.字符串逆序的函數(shù)REVERSE()select REVERSE('abc');--9.計(jì)算字符串的長(zhǎng)度函數(shù)LEN(str)select LEN('no'),LEN('日期'),LEN(12345);--10.匹配字符串開(kāi)始位置的函數(shù)CHARINDEX(str1,str,[start])select CHARINDEX('a','banana'),CHARINDEX('a','banana',4), CHARINDEX('na','banana', 4);--11.SUBSTRING()函數(shù)select SUBSTRING('breakfast',1,5), SUBSTRING('breakfast',LEN('breakfast')/2,LEN('breakfast'));--12.LOWER()select LOWER('BEAUTIFUL'),LOWER('Well');--13.UPPER()函數(shù)select UPPER('black'),UPPER('Black');--14.替換函數(shù)REPLACE(s,s1,s2)select REPLACE('xxx.sqlserver2012.com','x','w');

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 汶上县| 和硕县| 兰考县| 揭东县| 河西区| 称多县| 青海省| 铁岭市| 临江市| 衢州市| 顺平县| 新田县| 荥阳市| 东宁县| 万源市| 无锡市| 浪卡子县| 南康市| 革吉县| 浑源县| 张家港市| 甘洛县| 庆阳市| 柯坪县| 天津市| 韩城市| 聊城市| 蓝山县| 津南区| 莱西市| 巴林右旗| 河间市| 无为县| 恩平市| 清水河县| 霞浦县| 濮阳市| 蒙阴县| 武城县| 明溪县| 文成县|