webForumDet fria alternativet
Logga in / Bli medlem

"NULL" problem vid fråga?

Databaser & SQL

3 svar · 184 visningar · startad av mattiasnordin

Medlem sedan maj 20012 080 inlägg
Trådstart#1

SELECT * FROM itjour WHERE (stangt_av IS NULL OR stangt_av = '' OR oppnat_av IS NULL OR oppnat_av = '' OR stangt_datum IS NULL ) AND NOT prioritet = '0' ORDER BY prioritet,deadline,anmalt_datum

Frågan ovan fungerar och returnerar fyra rader som är anmält av system + en massa annat.

SELECT * FROM itjour WHERE (stangt_av IS NULL OR stangt_av = '' OR oppnat_av IS NULL OR oppnat_av = '' OR stangt_datum IS NULL ) AND NOT prioritet = '0' AND anmalt_av LIKE 'System%' AND oppnat_av LIKE '%' ORDER BY prioritet,deadline,anmalt_datum

När jag försöker filtrera ut allt som är anmält av System med frågan ovan får jag bara ut en rad???!!!

Vad gör jag för fel. Det märkliga är att om jag editerar någon av casen som är anmält av System så hittar frågan ovan även dessa.
Har det något med NULL att göra?

Please help...

Medlem sedan juni 200032 967 inlägg
#2

Vad händer om du tar bort AND oppnat_av LIKE '%'? Är någon av posterna null i det fältet?

Medlem sedan maj 20012 080 inlägg
#3

Ja :r

Tänk att jag inte hittade det. Jag märkte att jag kunde gå runt problemet med följande... Om det inte finns något snyggare sätt så duger det gott. Tack för det snabba svaret.

**if MyFilter = "ON" then

sql = "SELECT * FROM itjour WHERE "
sql = sql & " (stangt_av IS NULL OR stangt_av = '' "
sql = sql & " OR oppnat_av IS NULL OR oppnat_av = '' "
sql = sql & " OR stangt_datum IS NULL ) "
sql = sql & " AND NOT prioritet = '0' "
if sFilterAnmalt <> "" then
sql = sql & " AND anmalt_av LIKE '" &sFilterAnmalt &"%'"
end if
if sFilterOppnat <> "" then
sql = sql & " AND oppnat_av LIKE '" &sFilterOppnat &"%'"
end if
sql = sql & " ORDER BY prioritet,deadline,anmalt_datum"
'response.write sql
set rs = connect.execute(sql)

else

sql = "SELECT * FROM itjour WHERE "
sql = sql & " (stangt_av IS NULL OR stangt_av = '' "
sql = sql & " OR oppnat_av IS NULL OR oppnat_av = '' "
sql = sql & " OR stangt_datum IS NULL ) "
sql = sql & " AND NOT prioritet = '0' "
sql = sql & " ORDER BY prioritet,deadline,anmalt_datum"
'response.write "<font color=red>" &sql &"</font>"
set rs = connect.execute(sql)

end if
%>**

Medlem sedan juni 200032 967 inlägg
#4

Det är inget fel på det sättet. Så hade jag nog gjort själv i alla fall.

Mvh,

250 ms totalt · 4 externa anrop · v20260731065814-full.50d4b5bd
123 ms — deklarationer (db)
0 ms — hämta statistik (cache)
124 ms — hämta tråd, inlägg och bilagor (db)
119 ms — ändringar (db)