簡體   English   中英

為什么LIKE查詢在mysql中不起作用?

[英]Why LIKE query isn't working in mysql?

我有以下查詢...

SELECT * 
FROM customers
WHERE first_name LIKE '[aeiou]%';

結果顯示為:

EMPTY SET

為什么會這樣呢? 即使我在表中以aeiou開頭的​​條目足夠多? 但是,它適用於:

WHERE first_name LIKE 'C%';

請幫忙!!

MySQL中的LIKE不支持[aeiou]這樣的字符集。 它具有的唯一模式是%可以匹配任意數量的字符, _可以匹配任何單個字符。

您需要使用正則表達式:

WHERE first_name REGEX '^[aeiou]'

如果您需要檢查任何以元音開頭的匹配記錄,請使用以下一個

SELECT first_name 
FROM   customers
WHERE  first_name RLIKE '^[aeiouAEIOU].*[aeiouAEIOU]$'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM