SQL не выбирает пустые столбцы - PullRequest
0 голосов
/ 11 октября 2018

у меня есть таблица, которая выглядит следующим образом

students
----------
ID  | Name  | Class  | Pass
01  | Lisa  | 01     | 1D345
02  | Mike  | 03     | 22341
03  | Kim   | 03     | 
04  | Lance | 04     | 193CC

Поэтому я хотел выбрать те, где Pass не пуст, и я попытался

SELECT * ИЗ студентов, ГДЕ PassNOT NULL;

, который возвратил ту же таблицу, в которой он должен был вызвать меня, этот

students
----------
ID  | Name  | Class  | Pass
01  | Lisa  | 01     | 1D345
02  | Mike  | 03     | 22341
04  | Lance | 04     | 193CC

Я также пытался

SELECT * FROM студентов, ГДЕ Пропуск НЕ ''«;

и

ВЫБРАТЬ * ОТ ШКОЛЬНИКОВ, ГДЕ Pass! = '';

оба возвращают ошибку # 1064, так какое утверждение я должен использовать, чтобы получить нужную таблицу?

1 Ответ

0 голосов
/ 11 октября 2018

Предположительно, pass имеет значение, отличное от NULL.Это может работать:

WHERE Pass <> ''

Это эквивалентно вашему последнему варианту, который должен работать в большинстве баз данных (большинство баз данных поддерживают как <>, так и != для неравенства).

Иливам может потребоваться иметь дело с пробелами.

В MySQL вы можете использовать регулярное выражение, чтобы убедиться, что есть хотя бы один буквенно-цифровой символ:

where pass regexp '[a-zA-Z0-9]'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...