Следующий запрос работает, как ожидалось, и не возвращает данные с «с» флагом:SQL Оператор Select не работает с «как», как и ожидалось
SELECT *
FROM `func`
WHERE `next_act` < 1484870400
AND `assigned_to` IS NULL
AND `type` like '%FTTC%'
AND (`flags` NOT LIKE '%c%' OR `flags` IS NULL)
ORDER BY `priority`, `kci3_date`, `kci3_time` ASC
LIMIT 1
Когда я добавить дополнительный «не нравится», это начинается возвращать данные с «с» в flags
SELECT *
FROM `func`
WHERE `next_act` < 1484870400
AND `assigned_to` IS NULL
AND `type` like '%FTCT%'
AND (`flags` NOT LIKE '%c%' OR `flags` NOT LIKE 'w' OR `flags` IS NULL)
ORDER BY `priority`, `date`, `time` ASC
LIMIT 1
Ну, 'флаги НЕ НРАВИТСЯ 'w' 'позволяет' flags' быть * любым *, но '' w'' и 'null' (' 'c'' включено) –
Я думаю, вы должны использовать AND not OR – Jens
write 'AND ((' 'flags \' NOT LIKE '% c%' AND \ 'flags \' NOT L IKE 'w') ИЛИ \ 'flags \' IS NULL) 'вместо – fafl