Я делаю запрос к базе данных mysql.Значения NULL в запросе mysql - версии имеют значение?
Существует столбец под названием source
со значением по умолчанию NULL
, используемым для тегов удаленных данных.
На моем сервере dev я использовал запрос, например DELETE FROM mytable WHERE source
- это прекрасно работает и удаляет все строки со значением в source
.
На реальном сервере этот запрос не удаляет любые строки. Я предполагаю, что мне нужно использовать DELETE FROM mytable WHERE source IS NOT NULL
.
Однако, кажется странным, что было бы различие в том, как mysql обрабатывает значения NULL
. Это поведение зависит от версии mysql? Или мне нужно искать другую причину отказа этого запроса на реальном сервере?
Обычно говорят: 'УДАЛИТЬ ОТ x WHERE y = z', а не' WHERE y'. – tadman
Почему вы не делаете 'SELECT' на обоих и сравниваете результаты. – Kermit
@tadman Ничего необычного в отношении 'WHERE y' – Kermit