substring(參數1,參數2,參數3),其中三個參數分別表示:參數1表示需要截取的字符串,參數2表示從字符串的那個位置開始截取(字符串下標從1開始),參數3表示要截取多少位,如果不寫,表示截取從參數2指定的位置開始剩下的全部字符。
例如:
- select substring("jason",1,2);
結果為:ja - select substring("jason",1);
結果為:jason - select substring("jason",2);
結果為:ason
以上都是參數為正數的情況。那么當參數2為負數的情況呢?注意參數3是表示截取的位數,是不能為負數,如果為負數,查詢結果將為空值。
以下是當參數2為負數的情況
- 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);
結果為:空值
