在SQL中,LIKE
操作符用于在WHERE
子句中搜索具有特定模式的列。LIKE
操作符可以與通配符一起使用,以便在搜索時執行模式匹配。以下是一些常用的通配符及其用法:
%
(百分號):表示任意數量的字符(包括零個字符)。例如,LIKE '%abc'
將匹配任何包含"abc"的字符串。
+
(加號):表示一個或多個字符。例如,LIKE 'a+b'
將匹配任何以"ab"開頭的字符串。
?
(問號):表示一個字符。例如,LIKE '?b'
將匹配任何以任意字符開頭,后面跟著"b"的字符串。
[list]
:表示方括號內的任意一個字符。例如,LIKE '[abc]'
將匹配任何包含方括號內的任意一個字符的字符串。
[!list]
:表示不在方括號內的任意一個字符。例如,LIKE '[!abc]'
將匹配任何不包含方括號內的任意一個字符的字符串。
{m,n}
:表示重復m到n次。例如,LIKE 'a{2,3}'
將匹配"aa"或"aaa"。
{m,n}?
:表示重復m到n次,但只出現一次。例如,LIKE '{2,3}?'
將匹配"a"或"aa"。
以下是一些使用LIKE
操作符和通配符的示例:
SELECT * FROM table_name WHERE column_name LIKE 'A%'
SELECT * FROM table_name WHERE column_name LIKE '__'
SELECT * FROM table_name WHERE column_name LIKE '%abc%'
SELECT * FROM table_name WHERE column_name LIKE 'a?b'
SELECT * FROM table_name WHERE column_name LIKE '%ab%' OR column_name LIKE '%bc%'