之前就想要把一些 SQL 的常用函数记录下来,不过一直没有实行。。。嘿嘿。。。
直到今天用到substring()这个函数,C# 里面这个方法起始值是 0,而 SQL 里面起始值是 1。傻傻分不清楚。。。
这篇博客作为记录 SQL 的函数的使用方法,想到哪里用到哪里就写到哪里。。。
SubString():用于截取指定字符串的方法。该方法有三个参数:
参数1:用于指定要操作的字符串。
参数2:用于指定要截取的字符串的起始位置,起始值为 1 。
参数3:用于指定要截取的长度。
select substring('abcdef',1,3) -- 返回 abc select substring('123456321',0,2) -- 返回 1,即第一位,最好不要这样做
Left():用于返回指定字符串中指定长度的左侧部分。该方法有两个参数:
参数1:用于指定要操作的字符串。
参数2:用于指定要返回的子字符串的长度。
select LEFT('abc123',3) -- 返回 abc select LEFT('左侧部分右侧部分',4) -- 返回 左侧部分
Right():用于返回指定字符串中指定长度的右侧部分。该方法有两个参数:
参数1:用于指定要操作的字符串。
参数2:用于指定要返回的子字符串的长度。
select RIGHT('abc123',3) -- 返回 123 select RIGHT('左侧部分右侧部分',4) -- 返回 右侧部分
CharIndex():用于返回指定字符串中指定子字符串出现的起始位置。如果未找到就返回 0。该方法有两个参数:
参数1:用于指定要进行查找的字符串。
参数2:用于指定用作检索的字符串。
select charindex('a','123a123') -- 返回 4 select charindex('abc','123a123') -- 返回 0 select charindex('abc','123abc123') -- 返回 4
Stuff():用于删除指定长度的字符,并在删除的位置插入新的字符/值。该方法有四个参数:
参数1:用于指定要操作的字符串。
参数2:用于指定要删除字符的起始位置。
参数3:用于指定要删除字符的长度。
参数4:用于指定在删除的位置插入的新的字符串/值。
select stuff('123abc456',4,3,'ABC') -- 返回 123ABC456 select stuff('123abc456',1,3,'') -- 返回 abc456,用空字符串替代