mysql值locate()、position()、instr() 函数
語法:
locate(substr, str) : 返回字符串substr在 字符串身str 中第一次出現(xiàn)的位置。
locate(substr, str,?pos) :?返回字符串substr?在str中第一次出現(xiàn)的位置,從第pos位置開始。
說明:
????????返回0,代表字符串substr沒有出現(xiàn)在字符串str中 。
????????此函數(shù)執(zhí)行不區(qū)分大小寫。
示例
說明:返回結(jié)果,以第一次出現(xiàn)的字符順序?yàn)闇?zhǔn)。(從1開始)
SELECT LOCATE('bar', 'foobarbar'); -- 4SELECT LOCATE('Bar', 'foobarbar'); -- 4SELECT LOCATE('xbar', 'foobar'); -- 0SELECT LOCATE('bar', 'foobarbar', 5); -- 7功能類似的函數(shù)
1、POSITION(substr IN str) :返回字符串中第一次出現(xiàn)的子字符串的位置。
? ? ?如果在原始字符串中找不到子字符串,則此函數(shù)返回0。
? ? ?此函數(shù)執(zhí)行不區(qū)分大小寫的搜索
? ? ?注:LOCATE()函數(shù)等于position()函數(shù)。
2、INSTR(str,substr)?
?應(yīng)用于模糊查詢,替代傳統(tǒng)的 like 方式,并且速度更快。
語法:
? ??INSTR(str,substr)?????????--?mysql語法
? ? instr (str, substr, start, appearPosition) --?oracle語法
? ? instr(’源字符串’ , ‘目標(biāo)字符串’ ,’開始位置’, ’第幾次出現(xiàn)’)
1.str代表源字符串; substr代表要從源字符串中查找的子串;
2.start代表查找的開始位置,這個(gè)參數(shù)可選的,默認(rèn)為1;
3.appearPosition代表想從源字符中查找第幾次出現(xiàn)的substr,這個(gè)參數(shù)是可選的, 默認(rèn)為1。
4.如果start的值為負(fù)數(shù),則代表從右往左進(jìn)行查找,但是位置數(shù)據(jù)仍然從左向右計(jì)算。
5.返回值為:查找到的字符串的位置。如果沒有查找到,返回0。
?
總結(jié)
以上是生活随笔為你收集整理的mysql值locate()、position()、instr() 函数的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 大道至简——RISC-V架构之魂(中)
- 下一篇: 分享两款不错的CRM客户关系管理系统源码