Вы можете проверить, является ли столбец нулевым или ненулевым, используя WHERE col IS NULL
или WHERE col IS NOT NULL
, например.
SELECT myCol
FROM MyTable
WHERE MyCol IS NULL
В вашем примере у вас есть различные перестановки пустого пространства. Вы можете убрать пробел, используя TRIM
, и вы можете использовать COALESCE
, чтобы установить значение NULL по умолчанию (COALESCE вернет первое ненулевое значение из значений, которые вы вводите.
например.
SELECT myCol
FROM MyTable
WHERE TRIM(COALESCE(MyCol, '') = ''
Этот последний запрос вернет строки, в которых MyCol
равно нулю или имеет длину пробела.
Если вы можете избежать этого, лучше не указывать функцию для столбца в предложении WHERE, поскольку это затрудняет использование индекса. Если вы просто хотите проверить, является ли столбец пустым или пустым, вам лучше сделать это:
SELECT myCol
FROM MyTable
WHERE MyCol IS NULL OR MyCol = ''
См. TRIM COALESCE и NULL для получения дополнительной информации.
Также Работа с нулевыми значениями из документов MySQL