我有这样的查询:
select * from Customers where CustomerID in ('%1%');
但是不返回任何结果
select * from Customers where CustomerID in ('1');
MySQL IN子句中是否可以使用通配符,还是仅支持原始值?
我找不到能够证实或否认这一点的任何东西。
不是。使用正则表达式会更好。像这样的东西:
where customerid regexp 'apple|pear|banana'
这将返回在任何地方都有'apple'或'pear'或'banana'的客户ID。
如果您真的想使用like
,则需要进行多个比较:
where customerid like '%apple%' or
customerid like '%pear%' or
customerid like '%banana%'