開發中,經常進行模糊查詢或者進行擷取字串進行模糊匹配,常用的就是substr函式或者substring函式。
使用語法: substr(string a, int start),substring(string a, int start) 兩者用法一樣,兩個引數
返回值: string
說明:返回字串a從start位置到結尾的字串
舉例演示:
hive> select substr(『abcde』,3) fromlxw_dual;
cdehive> select substring(『abcde』,3) fromlxw_dual;
cdehive> select substr(『abcde』,-1) from lxw_dual; (和oracle相同,負數從最後一位開始擷取)
ehive> select substr(『abcde』,1,2) 和selectsubstr(『abcde』,0,2)結果一樣ab,預設都是從第一位開始取.
語法: substr(string a, int start, int len),substring(string a, intstart, int len),用法一樣,三個引數
返回值: string
說明:返回字串a從start位置開始,長度為len的字串
舉例演示:
hive> select substr(『abcde』,3,2) fromlxw_dual;
cdhive> select substring(『abcde』,3,2) fromlxw_dual;
cdhive>select substring(『abcde』,-2,2) fromlxw_dual;
de注意,實際開發中,比如查詢表中dataforjy欄位記錄後5位包含#的記錄條數?同樣可以用substr進行後5位擷取,然後用like或者rlike進行匹配(具體參考我的另外一篇部落格),但是如果出現dataforjy欄位部分記錄的長度不足五位的情況,怎麼處理?
hive > select substr(『abcde』,6) (結果是空值)
from:
炫龍網
js字串操作之substr與substring
substr和substring兩個都是擷取字串的。兩者有相同點,如果只是寫乙個引數,兩者的作用都是一樣的 就是擷取字串當前下標以後直到字串最後的字串片段。例如 var a abcdefghiklmnopqrstuvwxyz var b a.substr 3 var c a.substring 3 ...
ORACL instr 函式 substr函式
oracle函式instr用法 在oracle plsql中,instr函式返回要擷取的字串在源字串中的位置。只檢索一次,就是說從字元的開始到字元的結尾就結束。語法如下 instr 源字串,目標字串,起始位置,匹配序號 string1 源字串,要在此字串中查詢。string2 要在string1中查...
substr函式使用
string substr string string,int start int length 返回字串string由start和length引數指定的子字串。string輸入字串。start如果start是非負數,返回的字串將從string的start位置開始,從 0 開始計算。例如,在字串 a...