MYSQL 截取字符串用法

substring(參數1,參數2,參數3),其中三個參數分別表示:字符串

參數1表示須要截取的字符串,參數2表示從字符串的那個位置開始截取(字符串下標從1開始)(包前也包後),參數3表示要截取多少位若是不寫,表示截取從參數2指定的位置開始剩下的所有字符。
例如:string

    1. select substring("jason",1,2);
      結果爲:ja
    2. select substring("jason",1);
      結果爲:jason
    3. select substring("jason",2);
      結果爲:ason
      以上都是參數爲正數的狀況。那麼當參數2爲負數的狀況呢?注意參數3是表示截取的位數,是不能爲負數,若是爲負數,查詢結果將爲空值。
    4. 如下是當參數2爲負數的狀況select

      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
相關文章
相關標籤/搜索