Hvis du kun vil matche "" som en tom streng
WHERE DATALENGTH(COLUMN) > 0
Hvis du vil tælle en streng, der udelukkende består af mellemrum, som tom
WHERE COLUMN <> ''
Begge disse vil ikke returnere NULL
værdier, når de bruges i en WHERE
klausul. Som NULL
vil evaluere som UNKNOWN
for disse i stedet for TRUE
.
CREATE TABLE T
(
C VARCHAR(10)
);
INSERT INTO T
VALUES ('A'),
(''),
(' '),
(NULL);
SELECT *
FROM T
WHERE C <> ''
Returnerer kun den enkelte række A
. dvs. Rækkerne med NULL
eller en tom streng eller en streng, der udelukkende består af mellemrum, er alle udelukket af denne forespørgsel.