Como podemos verificar em uma WHERE
condição do SQL Server se a coluna não é nula e não a string vazia ( ''
)?
sql
sql-server
user993935
fonte
fonte
WHERE COALESCE(column, '') <> ''
?column
tem um índice, então sua consulta provavelmente não o usará.Hoje em dia (4,5 anos), para facilitar a leitura de um ser humano, eu usaria apenas
Embora exista uma tentação de tornar explícita a verificação nula ...
... como @Martin Smith demonstra na resposta aceita, ele realmente não adiciona nada (e eu, pessoalmente, evito os nulos do SQL hoje em dia, para que não se aplique a mim de qualquer maneira!).
fonte
A coalescência dobrará nulos em um padrão:
fonte
de maneira básica
fonte
Uma maneira amigável de fazer isso é:
Se não houver muitas linhas ou esse campo não estiver indexado, você pode usar:
fonte
Você pode usar qualquer um deles para verificar nulos, espaços em branco e cadeias vazias.
fonte
Basta verificar: where value> '' - não nulo e não vazio
fonte