substring(參數1,參數2,參數3),其中三個參數分別表示:字符串
參數1表示須要截取的字符串,參數2表示從字符串的那個位置開始截取(字符串下標從1開始)(包前也包後),參數3表示要截取多少位,若是不寫,表示截取從參數2指定的位置開始剩下的所有字符。
例如:string
- select substring("jason",1,2);
結果爲:ja
- select substring("jason",1);
結果爲:jason
- select substring("jason",2);
結果爲:ason
以上都是參數爲正數的狀況。那麼當參數2爲負數的狀況呢?注意參數3是表示截取的位數,是不能爲負數,若是爲負數,查詢結果將爲空值。
-
如下是當參數2爲負數的狀況select
- select substring("jason",-1);
結果爲:n
截取思想:從字符串末尾開始向前截取。
- select substring("jason",-3);
結果爲:son
- select substring("jason",-3,1);
結果爲:s
截取思想爲:若是有參數3指定須要截取的位數,則是從左往右開始截取也就是從首到尾,而不是從尾到首開始。
- select substring("jason",-3,2);
結果爲:so
- select substring("jason",-3,-1);
結果爲:空值
- select substring("jason",-3,0);
結果爲:空值
** 準備要截取得字符串 「
刪除十五天以前得數據共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 用法
- SBUSTR(要截取得字段,pos); 從pos開始的位置(從1開始包括1),一直截取到最後(包前)。
例子:SELECT SUBSTR(results_OF_Enforcement,2) FROM log_sheet
- 結果是:除十五天以前得數據共1條,刪除成功!!!!
SUBSTR(要截取得字段,pos,len);從pos開始的位置(開始從一開始),截取len個字符(空白也算字符)。(截取得結果包括開始和結尾)(包前也包後)
- SELECT SUBSTR(results_OF_Enforcement,1,2) FROM log_sheet
結果是 :「刪除」
以下嵌套查詢截取:
-
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