當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


SQL LIKE用法及代碼示例


SQL LIKE 運算符與使用WHERE 子句在列中搜索指定模式。 LIKE 運算符查找並返回符合給定模式的行。

LIKE 運算符是不區分大小寫大多數數據庫係統默認情況下。這意味著,如果您使用 LIKE 運算符搜索 “apple”,它將返回包含 “Apple”、“APPLE”、“aPpLe” 等的結果。

為了使 LIKE 運算符區分大小寫,您可以使用“MySQL 中的 BINARY”關鍵字或其他數據庫係統中的 “COLLATE” 關鍵字

例如

SELECT * FROM products WHERE name LIKE BINARY 'apple%'

以下查詢將僅返回名稱以 “apple” 開頭且拚寫完全一樣的產品,不帶大寫字母。

用法

SELECT column1, column2, ...
FROM table_name
WHERE columnN LIKE pattern;

LIKE 運算符通配符

通配符與 LIKE 運算符一起使用來搜索字符串中的特定模式。通配符替換字符串中的一個或多個字符。 SQL中有四個通配符:

  1. %(百分比):代表零個或多個字符。
  2. _(下劃線):代表單個字符。
  3. [](方括號):代表括號內的任何單個字符。
  4. -(連字符):指定括號內的字符範圍。

通配符示例

下表顯示了一些有關如何編寫通配符及其含義的示例:

圖案意義
'A%'匹配以‘a’開頭的字符串
'%A'匹配以 ‘a’ 結尾的字符串
'在'匹配包含以 ‘a’ 開頭並以 ‘t’ 結尾的字符串。
'%哇%'匹配任意位置包含子字符串‘wow’的字符串。
'_哇%'匹配第二個位置包含子字符串‘wow’的字符串。
'_A%'匹配第二個位置包含‘a’的字符串。
'A_ _%'匹配以“a”開頭且至少包含 2 個以上字符的字符串。

Demo SQL 數據庫

在本關於 SQL LIKE 運算符的教程中,我們將在示例中使用下表。

供應商表

SupplierID名字地址
S1模範供應商21-3, 奧克拉, Delhi
S2芒果國度21,法裏達巴德,哈裏亞納邦
S3加拿大商業6/7, 奧克拉二期, Delhi
S4商隊商人2-A, 皮坦普拉, Delhi
S5哈裏什父子古爾岡, NCR
S6歐姆供應商2/1, 法裏達巴德, 哈裏亞納邦

要在您的係統上創建此表,請編寫以下 SQL 查詢:

CREATE TABLE Supplier (
    SupplierID CHAR(2) PRIMARY KEY,
    Name VARCHAR(50),
    Address VARCHAR(100)
);
INSERT INTO Supplier (SupplierID, Name, Address)
VALUES
    ('S1', 'Paragon Suppliers', '21-3, Okhla, Delhi'),
    ('S2', 'Mango Nation', '21, Faridabad, Haryana'),
    ('S3', 'Canadian Biz', '6/7, Okhla Phase II, Delhi'),
    ('S4', 'Caravan Traders', '2-A, Pitampura, Delhi'),
    ('S5', 'Harish and Sons', 'Gurgaon, NCR'),
    ('S6', 'Om Suppliers', '2/1, Faridabad, Haryana');

SQL LIKE E示例

讓我們看一下 SQL 中 LIKE 運算符的一些示例,並了解它的工作原理。

示例 1

從供應商表中檢索供應商 ID、名稱和地址,其中供應商名稱以 k 開頭。

SELECT SupplierID, Name, Address
FROM Suppliers
WHERE Name LIKE 'Ca%';

輸出:

S3加拿大商業6/7, 奧克拉二期, Delhi
S4商隊商人2-A, 皮坦普拉, Delhi

示例 2

檢索整個表,其中地址包含 OKHLA。

SELECT *
FROM Suppliers
WHERE Address LIKE '%Okhla%';

輸出:

S1模範供應商21-3, 奧克拉, Delhi
S3加拿大商業6/7, 奧克拉二期, Delhi

實施例3

檢索名稱中第二個子字符串中包含“ango”的供應商的供應商ID、名稱和地址。

SELECT SupplierID, Name, Address
FROM Suppliers
WHERE Name LIKE '_ango%';

輸出:

S2芒果國度21,法裏達巴德,哈裏亞納邦

SQL LIKE 應用程序

LIKE 運算符在地址過濾等情況下非常足智多謀,在這種情況下,我們隻知道整個地址的一部分或一部分(例如位置或城市),並希望基於此檢索結果。可以根據要求巧妙地利用通配符來生成更好、過濾程度更高的元組。

關於 LIKE 運算符的要點

  • LIKE operator is used to search for specific patterns in a column.
  • It is mostly used with WHERE clause for finding or filtering specific data.
  • Like Operator is case-insensitive by default, to make it case sensitive, we can use BINARY keyword.
  • LIKE operator has 4 wild cards, which we can use with LIKE operator to specify the filter. The wild cards are: %,_,[] and -.


相關用法


注:本文由純淨天空篩選整理自佚名大神的英文原創作品 SQL LIKE Operator。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。