У меня следующий запрос (и он отлично работает):
SELECT cd.id AS card_id,
ct.id AS category_id,
COUNT(cc.user_id) AS cnt
FROM uiCards AS cd
JOIN uiCardCategories AS ct USING (project_id)
LEFT JOIN uiCategories2Cards AS cc ON (cc.card_id = cd.id AND cc.stack_id = ct.id)
WHERE cd.project_id = $projID
GROUP BY cd.id, ct.id
ORDER BY cd.id, ct.id
У меня также есть строка чисел:
$exclude = '100,122,345';
Мне нужно изменить строку, исключить результатынайдено в строке.Поэтому я добавил:
AND cc.user_id NOT IN ($exclude)
ниже WHERE
WHERE cd.project_id = $projID
AND cc.user_id NOT IN ($exclude)
Это не сработало, поэтому я попытался изменить больше, и весь запрос рухнул на меня.
ОБНОВЛЕНИЕ:
Я понял!Я добавил цитаты:
AND (FIND_IN_SET(cc.user_id, '$exclude') = 0 OR FIND_IN_SET(cc.user_id, '$exclude') IS NULL)