sqlserver中字符串处理

数据库表的某个字段大部分是单个id(数字),极少数是多个id用英文逗号连接组成的。现在想只展示单个id,如果是多个id则取第1个id。

case when CHARINDEX(',',htmx)>0 then  left(htmx,CHARINDEX(',',htmx)-1) else htmx end  htmx
  1. charindex 返回字符串中某个指定的子串出现的开始位置

    CHARINDEX ( expressionToFind , expressionToSearch [ , start_location ] )

      expressionToFind :目标字符串,就是想要找到的字符串,最大长度为8000。
    
      expressionToSearch :用于被查找的字符串。
    
      start_location:开始查找的位置,为空时默认从第一位开始查找。
    

    https://www.cnblogs.com/qianzf/p/7609641.html

  2. left 返回字符串左边开始指定个数的字符串

    https://www.cnblogs.com/selene/p/4461621.html

  3. substring 截取一个栏位资料中的其中一部分

    SUBSTRING(value_expression,start_expression,length_expression)

    第一个参数是要截取的字符串,第二个参数是开始位置,第三个参数是截取的长度。

    https://www.cnblogs.com/qianzf/p/7609634.html

posted @ 2021-01-14 14:34  hell6  阅读(156)  评论(0)    收藏  举报