詳解MySQL like如何查詢包含'%'的字段(ESCAPE用法)
在SQl like語(yǔ)句中,比如
SELECT * FROM user WHERE username LIKE ’%luchi%’SELECT * FROM user WHERE username LIKE ’_luchi_’, % 作為通配符通配多個(gè) _ 作為通配符通配一個(gè)
但當(dāng)like 所要查詢的字段中含有 % ,我們?nèi)绾稳ゲ椋?/p>
這個(gè)時(shí)候就需要指明 字段中的那個(gè)’%‘ 不作為通配符;這里就需要用到 ESCAPE 轉(zhuǎn)義
測(cè)試:這里我們使用這張表
轉(zhuǎn)義前:
SELECT * FROM user WHERE username LIKE ’%%%’;
這里會(huì)發(fā)現(xiàn)三個(gè)%號(hào)都被當(dāng)做通配符了;
轉(zhuǎn)義后:
SELECT * FROM user WHERE username LIKE ’%1%%’ ESCAPE ’1’;
查詢成功
注:
ESCAPE 后面跟著一個(gè)字符,里面寫(xiě)著什么,什么就是轉(zhuǎn)義符; 然后就像 C語(yǔ)言中轉(zhuǎn)義字符一樣 例如 ‘n’,’t’, 把這個(gè)字符寫(xiě)在你需要轉(zhuǎn)義的那個(gè)%號(hào)前就可以了;技巧與建議:MySQL的通配符很有用。但這種功能是有代價(jià)的:通配符搜索的處理一般要比前面討論的其他搜索所花時(shí)間更長(zhǎng)。這里給出一些使用通配符要記住的技巧。
不要過(guò)度使用通配符。如果其他操作符能達(dá)到相同的目的,應(yīng)該 使用其他操作符。 在確實(shí)需要使用通配符時(shí),除非絕對(duì)有必要,否則不要把它們用 在搜索模式的開(kāi)始處。把通配符置于搜索模式的開(kāi)始處,搜索起 來(lái)是最慢的。 仔細(xì)注意通配符的位置。如果放錯(cuò)地方,可能不會(huì)返回想要的數(shù).到此這篇關(guān)于詳解MySQL like如何查詢包含’%’的字段(ESCAPE用法)的文章就介紹到這了,更多相關(guān)MySQL like查詢%內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
