irpas技术客

SQL SERVER字符串截取,SQL SERVER根据指定字符截取_001_memory_sqlserver字符串截取

大大的周 8381

字符串截取 字符串截取函数:substring(str,startlen,endlen) 需要截取的字符:str 开始长度:startlen --从1开始 结束长度:endlen -从1开始 用法:select substring(“abcdefg”,1,2) 输出:bc

为啥这么麻烦:因为sql server没有substring_index函数,只能用substring函数 根据指定字符截取 需要用到的函数: substring–介绍上面已经写了 LTRIM --去除左边空格 RTRIM–去除右边空格 len–获取字符长度,从1开始

charindex(target,str)–返回指定字符的下标,从1开始 目标字符:target–可以指定任意东西字符 字符:str–目标字符所在的字符串 用法:charindex(”@“,“1234@abcd”) 输出:4

Tips:这里演示的字符中没包含换行符和占位符,请自行测试

实战sql:也可以直接拿来用; 需要改动的地方:表名,目标字符串:b.selectname,目标字符:"/"

SELECT LTRIM( RTRIM( b.selectname ) ) AS "字符串", charindex( '/', LTRIM( RTRIM( b.selectname ) ) ) + 1 AS "开始位置", len( b.selectname ) AS "结束位置", SUBSTRING ( LTRIM( RTRIM( b.selectname ) ), charindex( '/', LTRIM( RTRIM( b.selectname ) ) ) + 1, len( b.selectname ) ) AS "结果" FROM workflow_billfield a LEFT JOIN workflow_selectitem b ON a.id= b.fieldid WHERE billid = - 13 AND fieldname = 'fylx1';

sql执行结果:

文章到此结束,如有雷同纯属意外; 欢迎大家踊跃发言,积极补充。


1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,会注明原创字样,如未注明都非原创,如有侵权请联系删除!;3.作者投稿可能会经我们编辑修改或补充;4.本站不提供任何储存功能只提供收集或者投稿人的网盘链接。

标签: #sqlserver字符串截取 #SQL #SERVER字符串截取SQL #SERVER根据指定字符截取