Masalahnya adalah dengan prioritas OR
/AND
kondisi. AND
memiliki prioritas lebih tinggi daripada OR
, itu sebabnya pertama-tama mengevaluasi semua kondisi yang dihubungkan oleh AND
(tag-merch, newsID-2134 dan status-1) lalu mengevaluasi tag-gda dan tag-contests).
Coba tambahkan tanda kurung:
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