mysql select'%[..]%'没有显示任何条目

时间:2014-05-09 11:32:28

标签: php mysql

在我的mysql-db的一个字段中我有类似[1] [3] [10]的值...现在我想搜索只有值为[3]的条目。我用这个SQL-Select搜索:

SELECT * FROM thb_wine WHERE catID = '%[3]%'

不幸的是它没有显示条目。有什么问题?

感谢您的帮助 托马斯

2 个答案:

答案 0 :(得分:3)

应该是:

SELECT * FROM thb_wine WHERE catID LIKE '%[3]%'

当您使用单个值进行比较时,您使用=运算符,但是当您使用%符号查找部分匹配时,您需要使用LIKE运算符

答案 1 :(得分:0)

您需要了解有关MySQL中运算符的更多信息。 “LIKE”运算符最适合您的情况,因为您希望搜索仅包含特定值的条目。 %,_和[charlist]是此运算符的通配符。 '%'代替零或任何否。字符。'_'是一个字符的替代品,而'[charlist]'用于匹配的字符集和范围。 所以,您的查询应该是:

SELECT * FROM thb_wine WHERE catID LIKE '%[3]%'