我有一个单元格,其中包含由双管分隔的值。我正在尝试使用以下内容搜索此单元格的内容,(其中 10 是要搜索的数字)%10、10%、%10% 和 10
我的查询似乎只返回 10。没有其他变化。有人可以告诉我为什么它不起作用吗?
提前谢谢了。 (您在下面看到的 SQL 查询是从准备好的 PDO 查询语句导出的)
SELECT `Hat`.`id` AS `Hat_id` , `Hat`.`hatCode` AS `Hat_hatCode` , `Hat`.`hatCodeOther` AS `Hat_hatCodeOther` , `Hat`.`name` AS `Hat_name` , `Hat`.`description` AS `Hat_description` , `Hat`.`colorId` AS `Hat_colorId` , `Hat`.`collectionId` AS `Hat_collectionId` , `Hat`.`mainPicture` AS `Hat_mainPicture` , `Hat`.`subPicture` AS `Hat_subPicture` , `Hat`.`type` AS `Hat_type` , `Hat`.`featured` AS `Hat_featured` , `Hat`.`published` AS `Hat_published` , `Hat`.`deleted` AS `Hat_deleted`
FROM `modx_hats` AS `Hat`
WHERE (
(
`Hat`.`published` =1
AND `Hat`.`collectionId` = '1'
)
AND `Hat`.`colorId` = '%||10||%'
OR `Hat`.`colorId` = '10||%'
OR `Hat`.`colorId` = '%||10'
OR `Hat`.`colorId` = '10'
)
LIMIT 0 , 30
我认为你应该使用 LIKE 而不是 =:
AND `Hat`.`colorId` LIKE '%||10||%'
OR `Hat`.`colorId` LIKE '10||%'
OR `Hat`.`colorId` LIKE '%||10'
OR `Hat`.`colorId` = '10'
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)