SQL 萬用字元
SQL 萬用字元字元
萬用字元字元用於替換一個或多個字元。
萬用字元字元與 LIKE
運算子一起使用。 LIKE
運算子在 WHERE
子句中使用,用於在列中搜索指定模式。
萬用字元字元
符號 | 描述 |
---|---|
% | 表示零個或多個字元 |
_ | 表示單個字元 |
[] | 表示括號內的任何單個字元 * |
^ | 表示括號內不在的任何字元 * |
- | 表示指定範圍內的任何單個字元 * |
{} | 表示任何跳脫字元 ** |
* PostgreSQL 和 MySQL 資料庫不支援。
** 僅 Oracle 資料庫支援。
演示資料庫
以下是示例中使用的 Customers 表的選擇
CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
---|---|---|---|---|---|---|
1 |
Alfreds Futterkiste | Maria Anders | Obere Str. 57 | Berlin | 12209 | Germany |
2 | Ana Trujillo Emparedados y helados | Ana Trujillo | Avda. de la Constitución 2222 | México D.F. | 05021 | Mexico |
3 | Antonio Moreno Taquería | Antonio Moreno | Mataderos 2312 | México D.F. | 05023 | Mexico |
4 |
Around the Horn | Thomas Hardy | 120 Hanover Sq. | London | WA1 1DP | UK |
5 | Berglunds snabbköp | Christina Berglund | Berguvsvägen 8 | Luleå | S-958 22 | Sweden |
使用 % 萬用字元
%
萬用字元表示任意數量的字元,甚至是零個字元。
使用 _ 萬用字元
_
萬用字元表示單個字元。
它可以是任何字元或數字,但每個 _
代表一個且僅一個字元。
示例
返回所有 City
以 "L" 開頭,後跟任意 3 個字元,以 "on" 結尾的客戶
SELECT * FROM Customers
WHERE City LIKE 'L___on';
自己動手試一試 »
使用 [] 萬用字元
[]
萬用字元在方括號內的任何字元匹配時返回結果。
使用 - 萬用字元
-
萬用字元允許您在 []
萬用字元內指定一個字元範圍。
示例
返回所有以 "a"、"b"、"c"、"d"、"e" 或 "f" 開頭的客戶
SELECT * FROM Customers
WHERE CustomerName LIKE '[a-f]%';
自己動手試一試 »
組合萬用字元
任何萬用字元,例如 %
和 _
,都可以與其他萬用字元結合使用。
無萬用字元
如果沒有指定萬用字元,則短語必須精確匹配才能返回結果。
Microsoft Access 萬用字元
Microsoft Access 資料庫還有一些其他萬用字元
符號 | 描述 | 示例 |
---|---|---|
* | 表示零個或多個字元 | bl* 查詢 bl, black, blue, 和 blob |
? | 表示單個字元 | h?t 查詢 hot, hat, 和 hit |
[] | 表示括號內的任何單個字元 | h[oa]t 查詢 hot 和 hat,但不查詢 hit |
! | 表示括號外不在的任何字元 | h[!oa]t 查詢 hit,但不查詢 hot 和 hat |
- | 表示指定範圍內的任何單個字元 | c[a-b]t 查詢 cat 和 cbt |
# | 表示任何單個數字字元 | 2#5 查詢 205, 215, 225, 235, 245, 255, 265, 275, 285, 和 295 |