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

首頁 > 數據庫 > SQL Server > 正文

SQL Server 常用函數使用方法小結

2020-07-25 12:40:06
字體:
來源:轉載
供稿:網友

之前就想要把一些 SQL 的常用函數記錄下來,不過一直沒有實行。。。嘿嘿。。。

直到今天用到substring()這個函數,C# 里面這個方法起始值是 0,而 SQL 里面起始值是 1。傻傻分不清楚。。。

這篇博客作為記錄 SQL 的函數的使用方法,想到哪里用到哪里就寫到哪里。。。

SubString():用于截取指定字符串的方法。該方法有三個參數:

參數1:用于指定要操作的字符串。

參數2:用于指定要截取的字符串的起始位置,起始值為 1 。

參數3:用于指定要截取的長度。

select substring('abcdef',1,3)  -- 返回 abcselect substring('123456321',0,2)  -- 返回 1,即第一位,最好不要這樣做

Left():用于返回指定字符串中指定長度的左側部分。該方法有兩個參數:

參數1:用于指定要操作的字符串。

參數2:用于指定要返回的子字符串的長度。

select LEFT('abc123',3)    -- 返回 abcselect LEFT('左側部分右側部分',4)  -- 返回 左側部分

Right():用于返回指定字符串中指定長度的右側部分。該方法有兩個參數:

參數1:用于指定要操作的字符串。

參數2:用于指定要返回的子字符串的長度。

select RIGHT('abc123',3)    -- 返回 123select RIGHT('左側部分右側部分',4)  -- 返回 右側部分

CharIndex():用于返回指定字符串中指定子字符串出現的起始位置。如果未找到就返回 0。該方法有兩個參數:

參數1:用于指定要進行查找的字符串。

參數2:用于指定用作檢索的字符串。

select charindex('a','123a123')    -- 返回 4select charindex('abc','123a123')  -- 返回 0select charindex('abc','123abc123')  -- 返回 4

Stuff():用于刪除指定長度的字符,并在刪除的位置插入新的字符/值。該方法有四個參數:

參數1:用于指定要操作的字符串。

參數2:用于指定要刪除字符的起始位置。

參數3:用于指定要刪除字符的長度。

參數4:用于指定在刪除的位置插入的新的字符串/值。

select stuff('123abc456',4,3,'ABC')    -- 返回 123ABC456select stuff('123abc456',1,3,'')  -- 返回 abc456,用空字符串替代

 Len():用于返回指定文本的值的長度。前導空格計算在內,尾隨空格不計算在內。該方法有一個參數:

參數1:用于指定要操作的文本或字符串。

select len('123')  -- 返回 3select len('字符串')  -- 返回 3

Difference():用于返回一個整數值,指示兩個字符表達式的 SOUNDEX 值之間的差異。(即兩個字符串的相似度)那么什么是 SOUNDEX 值呢?先記著,下面輪到它了。

返回的值從 0 到 4 不等:0 表示幾乎不同或完全不同,4 表示幾乎相同或完全相同。該方法有兩個參數:

參數1:用于指定要進行比對的第一個字符串 SOUNDEX 值 。

參數2:用于指定要進行比對的第二個字符串 SOUNDEX 值。

select difference('action','demo')    -- 返回 2select difference('123456','整數')    -- 返回 4

Soundex():用于返回指定字符串的 SOUNDEX 值。SOUNDEX是一種語音算法,利用英文字的讀音計算近似值,值由四個字符構成,第一個字符為英文字母,后三個為數字。在拼音文字中有時會有會念但不能拼出正確字的情形,可用 Soundex 做類似模糊匹配的效果。這里的模糊匹配跟 LIKE 不同。

算法簡要說明:

-- 將英文字按以下規則替換(不使用第一個字符進行匹配,并且不使用對應值為 0 的英文字符的值)  a e h i o u w y -> 0  b f p v -> 1  c g j k q s x z -> 2  d t -> 3  l -> 4  m n -> 5  r -> 6

如果字符串中存在擁有相同對應數字的2個或以上的字母在一起(例如 j 和 k),則刪除其他的,只保留1個。去除對應值為 0 的字符,只返回前4個字節,不夠用 0 填充。

select soundex('string')  -- 返回 S215select soundex('str')  -- 返回 S210select soundex('123')  -- 返回 0000select soundex('字符串')  -- 返回 0000

PS:除英文字符以外的字符都將返回 0000,所以上面的方法 Difference() 的第二個示例會返回4(表示完全相同)。

Lower():用于返回指定英文字符串的小寫形式的字符串。如果不為英文字符串,則返回原值。該方法有一個參數:

參數1:用于指定要轉換為小寫形式的字符串。

select lower('ABC')    -- 返回 abcselect lower('123')  -- 返回 123

Upper():用于返回指定英文字符串的大寫形式的字符串。如果不為英文字符串,則返回原值。該方法有一個參數:

參數1:用于指定要轉換為大寫形式的字符串。

select upper('abc')    -- 返回 ABCselect upper('123')  -- 返回 123

Ltrim():用于返回刪除前導空格之后的字符串。該方法有一個參數:

參數1:用于指定要進行刪除前導空格操作的字符串。

select ltrim('    123')    -- 返回 123select ltrim('    好多空格')  -- 返回 好多空格select len('    123')  -- 返回 11select len(ltrim('    123')) -- 返回 3

Rtrim():用于返回截斷尾隨空格之后的字符串。該方法有一個參數:

參數1:用于指定要進行截斷尾隨空格操作的字符串。

select rtrim('123     ')    -- 返回 123select len(rtrim('123     ')) -- 返回 3

Replace():用第三個表達式替換第一個字符串表達式中出現的所有第二個給定字符串表達式。該方法有三個參數:

參數1:用于指定要操作的字符串,即被匹配的字符串。

參數2:用于指定要進行匹配的字符串。

參數3:用于指定用作替換存在的匹配項的字符串。

--把 abc 替換為 xxx select replace('123abc456','abc','xxx')    -- 返回 123xxx456-- 用空字符串替換匹配項select replace('123abc456','abc','')  -- 返回 123456

以上所述是小編給大家介紹的SQL Server 常用函數使用方法小結,希望對大家有所幫助,如果大家有任何疑問歡迎給我留言,小編會及時回復大家的,在此也非常感謝大家對武林網網站的支持!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 阿合奇县| 习水县| 江永县| 且末县| 苗栗市| 安泽县| 鄂州市| 平谷区| 黄浦区| 临沧市| 九龙坡区| 四川省| 鄱阳县| 东乡| 凤冈县| 永修县| 两当县| 兴业县| 淮南市| 修文县| 琼海市| 隆回县| 泽普县| 淮阳县| 凤冈县| 台山市| 镇原县| 大厂| 怀仁县| 翁牛特旗| 乐亭县| 枣强县| 昭苏县| 隆安县| 泰来县| 金沙县| 阿拉善左旗| 黑龙江省| 灵山县| 长沙县| 井研县|