尋找包含查詢字串的行:LIKE 運算子的逆操作
在MySQL 中,LIKE 運算子通常用於搜尋包含查詢字串的行包含指定的文字模式。例如,像這樣的查詢:
SELECT name FROM user WHERE name LIKE "%john%"
將傳回諸如「John Smith」和「Peter Johnson」之類的記錄。但是,如果需要進行相反的操作怎麼辦?也就是說,查找本身包含給定字串的行。
實作 LIKE 的逆
要尋找查詢字串中包含的行,您可以使用 LIKE 運算子和 CONCAT() 函數的組合。以下是一個範例:
SELECT name FROM user WHERE 'John Smith and Peter Johnson are best friends' LIKE CONCAT('%', name, '%')
在此查詢中,CONCAT() 函數將通配符(%) 與名稱欄位連接起來以建立模式:
%name%
LIKE 運算子然後將此模式與提供的字串進行匹配,識別包含其中找到的名稱的所有行。因此,在這種情況下,它將檢索“John Smith”和“Peter Johnson”。
此技術可讓您搜尋包含在較大字串中的行,從而有效地反轉 LIKE 運算子的功能,並且提供一種靈活的方式來查找資料庫中的特定資料。
以上是如何查找特定字串中包含的 MySQL 行?的詳細內容。更多資訊請關注PHP中文網其他相關文章!