LIKE 是另一個在 WHERE 子句中會用到的指令。基本上,LIKE 能讓我們依據一個套式 (pattern) 來找出我們要的資料。相對來說,在運用 IN 的時候,我們完全地知道我們需要的條件;在運用 BETWEEN 的時候,我們則是列出一個範圍。 LIKE 的文法如下:
SELECT "欄位名"
FROM "表格名"
WHERE "欄位名" LIKE {套式}
以下是幾個例子:
- 'A_Z': 所有以 'A' 起頭,另一個任何值的字原,且以 'Z' 為結尾的字串。 'ABZ' 和 'A2Z' 都符合這一個模式,而 'AKKZ' 並不符合 (因為在 A 和 Z 之間有兩個字原,而不是一個字原)。
- 'ABC%': 所有以 'ABC' 起頭的字串。舉例來說,'ABCD' 和 'ABCABC' 都符合這個套式。
- '%XYZ': 所有以 'XYZ' 結尾的字串。舉例來說,'WXYZ' 和 'ZZXYZ' 都符合這個套式。
- '%AN%': 所有含有 'AN' 這個套式的字串。舉例來說, 'LOS ANGELES' 和 'SAN FRANCISCO' 都符合這個套式。
我們將以上最後一個例子用在我們的 Store_Information 表格上:
Store_Information 表格
store_name Sales Date
LOS ANGELES $1500 Jan-05-1999
SAN DIEGO $250 Jan-07-1999
SAN FRANCISCO $300 Jan-08-1999
BOSTON $700 Jan-08-1999
SELECT *
FROM Store_Information
WHERE store_name LIKE '%AN%'
結果就是這樣了
store_name Sales Date
LOS ANGELES $1500 Jan-05-1999
SAN DIEGO $250 Jan-07-1999
SAN FRANCISCO $300 Jan-08-1999