MYSQL 截取字符串用法

substring(参数1,参数2,参数3),其中三个参数分别表示:

参数1表示需要截取的字符串,参数2表示从字符串的那个位置开始截取(字符串下标从1开始)(包前也包后),参数3表示要截取多少位如果不写,表示截取从参数2指定的位置开始剩下的全部字符。
例如:

    1. select substring("jason",1,2);
      结果为:ja
    2. select substring("jason",1);
      结果为:jason
    3. select substring("jason",2);
      结果为:ason
      以上都是参数为正数的情况。那么当参数2为负数的情况呢?注意参数3是表示截取的位数,是不能为负数,如果为负数,查询结果将为空值。
    4. 以下是当参数2为负数的情况

      1. select substring("jason",-1);
        结果为:n
        截取思想:从字符串末尾开始向前截取。
      2. select substring("jason",-3);
        结果为:son
      3. select substring("jason",-3,1);
        结果为:s
        截取思想为:如果有参数3指定需要截取的位数,则是从左往右开始截取也就是从首到尾,而不是从尾到首开始。
      4. select substring("jason",-3,2);
        结果为:so
      5. select substring("jason",-3,-1);
        结果为:空值
      6. select substring("jason",-3,0);
        结果为:空值
        ** 准备要截取得字符串   “删除十五天之前得数据共1条,删除成功!!!!”     **
      7. ========================================其它截取字符串得用法
        1. 从左开始截取字符串
                             left(str, length) 
                            说明:left(被截取字段,截取长度) (截取长度从1开始)
                            例:SELECT left(results_OF_Enforcement,4) FROM log_sheet  //执行结果 “删除十五”
                            2. 从右开始截取字符串(和从左往右一个道理)
                            right(str, length) 
                           说明:right(被截取字段,截取长度) 
                           例:select right(content,200) as abstract from my_content_t
             8. SBUSTR 用法  
      1. SBUSTR(要截取得字段,pos); 从pos开始的位置(从1开始包括1),一直截取到最后(包前)。
        例子:SELECT SUBSTR(results_OF_Enforcement,2) FROM log_sheet
        1. 结果是:除十五天之前得数据共1条,删除成功!!!!
          SUBSTR(要截取得字段,pos,len);从pos开始的位置(开始从一开始),截取len个字符(空白也算字符)。(截取得结果包括开始和结尾)(包前也包后)
          1. SELECT SUBSTR(results_OF_Enforcement,1,2) FROM log_sheet
            结果是 :“删除”
            如下嵌套查询截取:
            1. SELECT

                  jl.*

              FROM

                  jl

              WHERE

                  jl.id = ( SELECT SUBSTRING( ( SELECT USER.jlid FROM USER WHERE USER.id = 1 ), 1, 1 ) )

                  OR jl.id = ( SELECT SUBSTRING( ( SELECT USER.jlid FROM USER WHERE USER.id = 1 ), 3, 1 ) )

                  LIMIT 0,

                  30

posted on 2019-10-23 15:11  UnmatchedSelf  阅读(452)  评论(0编辑  收藏  举报

导航