SQL对字符串的各种风骚操作

字符串截取

  • LEFT(str,len) 返回字符串 str 左边开始的 len 个字符,如果 strlen 任意一个为 null 或空, 则返回 NULL

  • RIGHT(str,len) 返回字符串 str 右边开始的 len 个字符,如果 strlen 任意一个为 null 或空, 则返回 NULL

  • SUBSTRING(str,pos)SUBSTRING(str FROM pos)SUBSTRING(str,pos,len)
    SUBSTRING(str FROM pos FOR len) 返回字符串 str 在第 pos+1 位置开始,长度为 len 的新字符串。

 SELECT LEFT('hello world',3);  -- "hel"

 SELECT RIGHT('hello world',3);  -- "rld"

 SELECT SUBSTRING('123456789',3);  -- "3456789"

 SELECT SUBSTRING('123456789' FROM 3);  -- "3456789"

 SELECT SUBSTRING('123456789',3,4);  -- "3456"

 SELECT SUBSTRING('123456789' FROM 3 FOR 4);  -- "3456"

字符串去除空格

  • LTRIM(str) 去除字符串 str 左边的空白字符。

  • RTRIM(str) 去除字符串 str 右边的空白字符。

  • TRIM(str) 去除字符串 str 左右两边的空白字符。

  • TRIM([{BOTH | LEADING | TRAILING} [remote_str] FROM] str) 去除字符串 str {全部 | 头部 | 尾部}的remote_str

  SELECT LTRIM('  hello world  ' ) ;  -- 'hello world  '

  SELECT RTRIM('  hello world  ');  -- '  hello world'

  SELECT TRIM('  hello world  ');  -- 'hello world'

  SELECT TRIM(LEADING 'x' FROM 'xxxhello-worldxxx');  -- 'hello-worldxxx'

  SELECT TRIM(BOTH 'x' FROM 'xxxhello-worldxxx');  -- 'hello-world'

  SELECT TRIM(TRAILING 'xyz' FROM 'hello-worldxxyz');  -- 'hello-world'

字符串转化

CAST 是用来将一种数据类型的表达式转换为另一种数据类型的表达式。

  • CAST(source_str AS data_type) 返回字符串 source_str 转化为 data_type 类型。
  select CAST('123' as int) ;  -- 123
  select CAST('123.456' as decimal(9,2));  -- 123.46

参考链接

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容