Проблемът е с приоритета на OR
/AND
условия. AND
има по-висок приоритет от OR
, затова първо оценява всички условия, свързани с AND
(tags-merch, newsID-2134 и status-1) и след това оценява маркерите-gda и tags-contests).
Опитайте се да добавите скоби:
SELECT *
FROM `posts`
WHERE (`tags` LIKE '%gda%'
OR `tags` LIKE '%contests%'
OR `tags` LIKE '%merch%')
AND `newsID` != '2134'
AND `status` > '1'
ORDER BY `postDate` DESC
LIMIT 5