字符串函数用于对字符和二进制字符进行各种操作

1.ASCII()函数

 ASCII(character_expression)函数用于返回字符串表达式中最左侧的ASCII代码值。参数character_expression必须是一个char或varchar类型的字符串表达式。
 eg: select ASCII('s'),ASCII('sql'),ASCII('1');
执行结果如图:
字符's'的ASCII值为115,所以第一行和第二行返回结果相同,对于第三条语句中的纯数字的字符串,可以不用单引号括起来。

2.CHAR()函数

 CHAR(integer_expression)函数将整数类型的ASCII值转换为对应的字符,integer_expression是一个介于0~255之间的整数。如果该整数表达式不在此范围内,将返回null值。
eg: select CHAR(115),CHAR(49);
可以看到,这里返回的值与ASCII函数的返回值正好相反.

3.LEFT()函数

  LEFT(character_expression,integer_expression)函数返回字符串左边开始指定个数的字符串、字符或者二进制数据表达式。character_expression是字符串表达式,可以是常量,变量或字段。integer_expression为整数,指定character_expression将返回的字符数。 
eg: select LEFT('football',4);
 函数返回字符串“football”左边开始的长度为4的子字符串,结果为“foot”,可见索引从1开始。

4.RIGHT()函数

 与LEFT()函数相反,RIGHT(character_expression,integer_expression)返回字符串character_expression最右边integer_expression个字符。
eg: select RIGHT('football',4);
 函数返回字符窜"football"右边开始的长度为4的字符串,结果为“ball”,索引也是从1开始的。

5.LTRIM()函数

  LTRIM(character_expression)用于除去字符串左边多余的空格,字符数据表达式character_expression是一个字符串表达式,可以是常量,变量,也可以是字符字段或者二进制数据列。
eg: select '(' + ' book ' + ')', '(' +LTRIM( ' book ') + ')';
 对比两个值,LTRIM只删除字符串左边的空格,右边的空格不会被删除.

6.RTRIM()函数

  RTRIM(character_expression)用于除去字符串右边多余的空格,字符数据表达式character_expression是一个字符串表达式,可以是常量,变量,也可以是字符字段或者二进制数据列。
eg:  select '(' +' book ' +')','(' +RTRIM(' book ') +')';
 对比两个值,LTRIM只删除字符串右边的空格,左边的空格不会被删除.

7.STR()函数

 STR(float_expression [ , length [ , decimal ] ])函数用于将数值数据转换为字符数据。float_expression是一个带有小数点的近似数字(float)数据类型的表达式。length表示总长度。它包括小数点、符号、数字以及空格,默认值为10。decimal指定小数点后的位数,decimal必须小于或等于16。如果decimal大于16,则会截断结果,使其保持小数点后有16为。
eg: select STR(3141.59,6,1),STR(123.45,2,2)
 第一条语句6个数字和一个小数点组成的数值3141.59转换为长度为6的字符串,数字的小数部分舍入为1个小数位,第二条语句中的表达式超出指定的总长度时,返回的字符串为指定长度的两个**。

8.字符串逆序的函数REVERSE()

 REVERSE(s)将字符串s反转,返回的字符串的顺序和s的顺序相反。
 eg: select REVERSE('abc');
 由结果可以看到,字符串“abc”经过REVERSE函数处理后,所有的字符串顺序被反转,结果为“cba”;

9.计算字符串的长度函数LEN(str)

 返回字符表达式中的字符数。如果字符串中包含前导空格和尾随空格,则函数将它们包含在内。LEN对相同的单字节和双字节字符串返回相同的值。
eg: select LEN('no'),LEN('日期'),LEN(12345);
 可以看到,LEN函数在对待英文字符和汉字字符时,返回的字符串长度是相同的,一个汉字也算作一个字符。LEN函数在处理纯数字也将其当作字符串,但是纯数字可以不实用引号.

10.匹配字符串开始位置的函数CHARINDEX(str1,str,[start])

 CHARINDEX(str1,str,[start])函数返回子字符串str1在字符串str中的开始位置,start为搜索的开始位置,如果指定start参数,则从指定位置开始搜索;如果不指定start参数或者指定为0或者负值,则从字符串开始位置搜索。
 eg: select CHARINDEX('a','banana'),CHARINDEX('a','banana',4), CHARINDEX('na','banana', 4);

 CHARINDEX('a','banana')返回字符串'banana'中子字符串‘a’ 第一次出现的位置,结果为2;
 CHARINDEX('a','banana',4)返回字符串'banana'中从第4个位置开始子字符串‘a’的位置,结果为4;
 CHARINDEX('na','banana', 4)返回从第4个位置开始子字符串‘na’第一次出现的位置,结果为5

11.SUBSTRING()函数

 SUBSTRING(value_expression,start_expression,length_expression)函数返回字符表达式,二进制表达式,文本表达式或图像表达式的一部分。
 value_expression是character、binary、text、ntext或image表达式。
 start_expression指定返回字符的起始位置的整数或表达式。如果start_expression小于0,或生成错误并终止语句。如果 start_expression大于值表达式的字符数,将返回一个零长度的表达式。
 length_expression是正整数或指定要返回的value_expression的字符数表达式。如果length_expression是负数,会生成错误并终止语句,如果start_expression与length_expression的总和大于value_expression中的字符数,则返回整个值表达式。
eg: select SUBSTRING ('breakfast'1,5), SUBSTRING('breakfast' , LEN('breakfast')/2, LEN('breakfast'));
 第一条语句返回从第一个位置开始长度为5的字符串,结果为"break",第二条语句返回整个字符串的后半段字符串,结果为"akfast"

12.LOWER()

 LOWER(character_expression)将大写字符数据转换为小写字符数据后返回字符表达式。character_expression是指定要进行转换的字符串。
eg: select LOWER('BEAUTIFUL'),LOWER('Well');
由结果可以看到,经过LOWER()函数转换之后,大写字母都变成小写了,小写字母保持不变.

13.UPPER()函数

 UPPER(character_expression)将小写字符数据转换为大写字符数据后返回字符表达式。character_expression指定要进行转换的字符串。
eg: select UPPER('black'),UPPER('Black');
 由结果可以看到,经过UPPER函数转换后,小写字母都变成了大写,大写字母保持不变。

14.替换函数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'字符,结果为"www.sqlserver2012.com";

转载于:https://www.cnblogs.com/haobadea/p/4462044.html

Sql Server字符串函数相关推荐

  1. SQL SERVER 字符串函数 STRING_SPLIT()

    定义: STRING_SPLIT()函数根据指定的分隔符将字符串拆分为子字符串行. ※STRING_SPLIT 要求兼容性级别至少为 130. (即SSMS 2016及以上版本) ※级别低于 130 ...

  2. sql server字符串替换函数REPLACE

    使用REPLACE(替换字符串)函数REPLACE函数将字符串中的子字符串替换为指定字符串. 语法: REPLACE (string_expression1, string_expression2, ...

  3. SQL常用字符串函数

    SQL常用字符串函数 一.字符转换函数 1.ASCII() 返回字符表达式最左端字符的ASCII 码值.在ASCII()函数中,纯数字的字符串可不用''括起来,但含其它字符的字符串必须用''括起来使用 ...

  4. SQL Server日期函数集合

    SQL Server日期函数集合--1:获取系统日期和时间值函数 --getdate() SELECT GETDATE() AS 'today' --getutcdate() SELECT GETUT ...

  5. sql server charindex函数和patindex函数详解(转)

    charindex和patindex函数常常用来在一段字符中搜索字符或字符串.假如被搜索的字符中包含有要搜索的字符,那么这两个函数返回一个非零的整数,这个整数是要搜索的字符在被搜索的字符中的开始位数. ...

  6. sql 替换字符串函数_你有一份Excel文本函数大全,请注意查收(下)

    点击关注上方"SQL数据库开发", 设为"置顶或星标",第一时间送达干货 之前给大家分享了Excel文本函数的上中两部分,没有看的小伙伴可以戳这里: 你有一份E ...

  7. Sql Server REPLACE函数的使用;SQL中 patindex函数的用法

    Sql Server REPLACE函数的使用 REPLACE 用第三个表达式替换第一个字符串表达式中出现的所有第二个给定字符串表达式. 语法 REPLACE ( ''string_replace1' ...

  8. Sql server 日期函数和日期转换

    时间函数 SQL Server Date 函数 下面的表格列出了 SQL Server 中最重要的内建日期函数: 函数 描述 GETDATE() 返回当前日期和时间 DATEPART(Type,dat ...

  9. oracle sql常用的函数,界别Oracle和SQL Server常用函数

    区分Oracle和SQL Server常用函数 一.数学函数 1.绝对值 S:select abs(-1) value O:select abs(-1) value from dual 2.取整(大) ...

最新文章

  1. subplot subplots绘制子图
  2. c语言:输入两个正整数m和n,求其最大公约数和最小公倍数
  3. vsftp 安装日志
  4. 服务器被入侵了?反手溯源出入侵者画像【网络安全】
  5. JSP生成静态HTML页面的实践方法和设计思路
  6. bootstrap3中模态框的数据编辑使用方法
  7. 模式匹配运算符–Shell
  8. laravel api_如何在现有的Laravel应用中获取即时GraphQL API
  9. 99%学习前端开发都会遇到的问题,百分之百都没绝对意识
  10. Markdown简介
  11. iozone测试文件系统
  12. WinSCP通过puTTYgen生成的ppk文件访问远程主机
  13. Cisco防火墙概述和产品线
  14. 学生管理-axios优化
  15. 总结一下强化学习在工业界应用,给大家扩展一下思路(简易科普)
  16. 展会中,你做得够好么?
  17. revit建模中复合墙与叠层墙区别?Revit中怎么创建叠层墙?
  18. vex机器人 亚洲公开赛_喜报| HFI人工智能社勇夺VEX机器人亚洲公开赛最高荣誉“全能奖”等四奖项...
  19. 会计初级系统计算机怎么样,原来初级会计题库有这么多作用 一文一探究竟!(电脑版)...
  20. 机械键盘caps键和ctrl键颠倒,解决办法

热门文章

  1. 【qduoj】C语言_求整数各位数之和
  2. 【nyoj 47】 过河问题(思维)
  3. C语言第六次作业指针,c语言第六次作业解析
  4. linux快照软件哪个好,Linux下的快照snapshot的实现
  5. 有几种部署模式_来!PyFlink 作业的多种部署模式
  6. 从数据库表中随机获取N条记录的SQL语句
  7. Linux学习:第四章-vi编辑器
  8. leetcode1103. 分糖果 II 该模拟就模拟,别老想着优化
  9. NLP复习资料(2)-三~五章:形式语言、语料库、语言模型
  10. 硬件密码组件的硬件结构、作用及实现应用设计