webForumDet fria alternativet

Kontrollera tom varhcar

Databaser & SQL

3 svar · 1 235 visningar · startad av iing9808

Medlem sedan sep. 200445 inlägg
Frågan#1

Jag har en databas som har ett värde av typen varchar.
Hur kollar jag om det står något eller inte?

Typ:
Select * from tabell where myvalue <> ""
Medlem sedan juni 201161 inlägg
#2

Ja, även om det korrekta enligt SQL-standarden är:

Select * from tabell where myvalue <> ''

Alltså enkla fnuttar runt en text.

Sedan får man ju hoppas att fältet är NOT NULL, annars behöver du tänka på skillnaden mellan NULL och tomt fält. NULL innebär att vi inte vet vilket värde fältet borde ha, medan tom sträng innebär att vi vet att det skall vara blankt. Många gånger vill du ju söka fram de som har ett angivet värde i fältet som inte är tomt och då är det ju två villkor:

Select * from tabell where myvalue IS NOT NULL AND myvalue <> ''
Medlem sedan feb. 20034 441 inlägg
#3

Annars kan du kolla med:

SELECT * FROM table WHERE LENGTH(fieldname] = 0;

Den räknar alltså antalet tecken i ett fält.

Medlem sedan sep. 200445 inlägg
#4

Kanon, tackar!

is not null

gjorde susen

259 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
121 ms — deklarationer (db)
0 ms — hämta statistik (cache)
135 ms — hämta tråd, inlägg och bilagor (db)
117 ms — ändringar (db)