Ошибка MySQL: NULL ORDER BY pid DESC LIMIT 0,50

Когда я запускаю этот запрос:

SELECT * FROM `forums_posts` WHERE pid < IS NULL ORDER BY pid DESC LIMIT 0,50

Версия MySQL: 5.5.5-10.1.13-MariaDB

Я получаю эту ошибку:

Ошибка: 1S111 / 1 В вашем синтаксисе SQL есть ошибка; проверьте руководство, которое соответствует вашей версии сервера MariaDB для права
синтаксис для использования около ‘IS NULL ORDER BY pid DESC LIMIT 0,50’ в строке 1

Что я делаю неправильно?

-5

Решение

Если вы хотите получить запись, где pid не равен NULL, попробуйте следующее:

SELECT * FROM `forums_posts` WHERE pid IS NOT NULL ORDER BY pid DESC LIMIT 0,50

Если вы хотите получить запись, где pid равен нулю, попробуйте следующее:

SELECT * FROM `forums_posts` WHERE pid IS NULL ORDER BY pid DESC LIMIT 0,50

Мы не можем использовать < > и еще один такой оператор с IS NULL.

1

Другие решения

Условие НЕДЕЙСТВИТЕЛЬНО или НЕДЕЙСТВИТЕЛЬНО. Не существует ‘pid< НУЛЕВОЙ’.

SELECT * FROM forums_posts WHERE pid IS NULL ORDER BY pid DESC LIMIT 0,50
2

Попробуй это

ВЫБРАТЬ ИЗ table_name ГДЕ ИДЕНТИФИКАЦИОННЫЙ НОМЕР ПО ИДЕНТИФИКАТОРУ DESC LIMIT 0,50

1

Вы используете неправильный запрос: pid < IS NULL ничего

Либо это будет

 SELECT * FROM `forums_posts` WHERE pid IS NOT NULL ORDER BY pid DESC LIMIT 0,50 // if you don't want NULL value

ИЛИ ЖЕ

SELECT * FROM `forums_posts` WHERE pid IS NULL ORDER BY pid DESC LIMIT 0,50 // if you want only NULL value
1

В

SELECT * FROM `forums_posts` WHERE pid < IS NULL ORDER BY pid DESC LIMIT 0,50

Так должно быть pid < IS NULL

Потому что в SQL каждый отдельный NULL отличается от другого значения NULL. Для этой цели мы не можем использовать <> как бы мы использовали для других.

0
По вопросам рекламы [email protected]