У меня есть запрос, указанный ниже, из выписки из PDO. Все в запросе отлично работает, кроме collectionId = 3. Его возвращающиеся результаты с другими интергерами ...mysql-запрос не фильтрует И как ожидалось
Я уставился на это некоторое время и не могу понять, что не так, все это выглядит хорошо для меня?
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` = '3'
AND `Hat`.`colorId` LIKE '%||2||%'
OR `Hat`.`colorId` LIKE '2||%'
OR `Hat`.`colorId` LIKE '%||2'
OR `Hat`.`colorId` LIKE '2'
)
LIMIT 0 , 30
ЗАКАНЧИВАТЬ SQL оператора precendence и этот вопрос: http://stackoverflow.com/questions/1241142/sql-logic-operator-precedence-and- и-или – vbo
возможный дубликат [SQL Query multiple AND и OR не работает] (http://stackoverflow.com/questions/21096134/sql-query-multiple-and-and-ors-not-working) – codeling