MySQL ГДЕ: как написать «! =» Или «не равно»?


95

Мне нужно сделать это

DELETE FROM konta WHERE taken != ''

Но! = Не существует в mysql. Кто-нибудь знает, как это сделать?

Ответы:



38

Оператор ! = Наверняка существует! Это псевдоним стандартного <>оператора.

Возможно, ваши поля на самом деле не пустые строки, а NULL?

Для сравнения NULLвы можете использовать IS NULLили IS NOT NULLили нулевой безопасный оператор равенства<=> .


Эх, я вижу, куда NULLидет (+1), но кажется странным, что нужно удалить не пустое или NULL ..

11

Возможно, вы используете старую версию Mysql, но, безусловно, можете использовать

 DELETE FROM konta WHERE taken <> ''

Но есть много других вариантов. Вы можете попробовать следующие

DELETE * from konta WHERE strcmp(taken, '') <> 0;

DELETE * from konta where NOT (taken = '');
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.