我有以下查詢(反斜槓)在SQL查詢中意味着什麼?
SELECT txt1 FROM T1 WHERE txt1 LIKE '_a\%'
將那結果有任何字符答案+ A + \ +什麼?
有點像Pa \ pe作爲結果嗎?
是Ca%或_a%有效答案也許?
如何在SQL查詢中正常運行?
我有以下查詢(反斜槓)在SQL查詢中意味着什麼?
SELECT txt1 FROM T1 WHERE txt1 LIKE '_a\%'
將那結果有任何字符答案+ A + \ +什麼?
有點像Pa \ pe作爲結果嗎?
是Ca%或_a%有效答案也許?
如何在SQL查詢中正常運行?
%是一個匹配LIKE子句中的零個或多個字符的通配符。 _是在LIKE子句中精確匹配一個字符的通配符。
\是一個特殊字符,被稱爲轉義字符,表示直接跟在它後面的字符應該逐字解釋(對單引號,通配符等有用)。
例如:
SELECT txt1 FROM T1 WHERE txt1 LIKE '_a%'
將選擇「XA1」的txt1中值的記錄,「XA塔科」,「雅什麼真正的」等
現在讓我們假設你想實際搜索爲百分號。爲了做到這一點,你需要一個特殊的字符,表示%而不是被視爲通配符。例如:
SELECT txt1 FROM T1 WHERE txt1 LIKE '_a\%'
將選擇txt1值爲'ba%'(但沒有別的)的記錄。
最後,一個LIKE子句通常會包含一個通配符(否則您可以只使用=而不是LIKE)。所以你可能會看到一個包含\ %%的查詢。這裏,第一個百分號將被視爲字面百分號,但第二個符號將被解釋爲通配符。例如:
SELECT txt1 FROM T1 WHERE txt1 LIKE '_a\%%'
將選擇「DA%別的東西」,「FA%塔科」,「質量%一堆玉米餅」等txt1中值的記錄
好的,但_仍然會選擇任何字符右鍵?那麼LIKE'_a \%'實際上導致像'Xa \%'這樣的東西是X任何字符(實際上是什麼)? – Polux 2013-03-05 03:38:06
是的。 _是與任何單個字符匹配的通配符。 %將匹配多個字符。 – chrislopresto 2013-03-05 03:58:51
對於SELECT txt1 FROM T1 WHERE txt1 LIKE'_a \%'是'Ca%'和'_a%'的有效查詢結果呢? – Polux 2013-03-05 04:20:36
大多數情況下,這是一種逃避字符,說解釋下一個字符爲文字,而不是通配符字符... – Sparky 2013-03-05 01:58:32
所以它應該產生像Ca%或_a%這樣的結果? – Polux 2013-03-05 02:16:36