SQL语句:如何截取指定字段某一个字符的前面/后面的字符串?


假设数据库中,某一列数据像这样,每个数据都有同一个字符“-”,这时如果我们需要获取这个字符的前面的字符串或后面的字符串,应该用什么SQL语句呢?

 

SUBSTRING ( expression, start, length ) --SUBSTRING('列名',起始位数,要取的字符串长度) 

  

1.获取“-”前面的字符串:

SUBSTRING(  FBILLNO  ,          1           ,  CHARINDEX('-',FBILLNO)-1  )

                           列名   ,从第一位取值要取的字符串长度是“-”字符在字段中的位置减1

 

2.获取“-”后面的字符串:

SUBSTRING(  FBILLNO  ,    CHARINDEX('-',FBILLNO)+1 ,    len(FBILLNO)-charindex('-',FBILLNO)  )

                           列名      ,   从“-”字符后一位开始            ,   要取的字符串长度是字段总长度减去“-”字符所在位置

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM