Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi LEFT OUTER JOIN mit NULL-Abfrage funktioniert nicht, warum? (https://www.delphipraxis.net/145035-left-outer-join-mit-null-abfrage-funktioniert-nicht-warum.html)

Piro 22. Dez 2009 12:31

Datenbank: MS SQL Express • Version: 2005 • Zugriff über: ADO

LEFT OUTER JOIN mit NULL-Abfrage funktioniert nicht, warum?
 
Moin zusammen,

ich habe ein Problem mit einer SQL Abfrage. Folgende SQL Abfrage zeigt alles an, was ich brauche.
SQL-Code:
SELECT h.hsrpgroup as hsrp, h.site_id, s.hsrpgroup
FROM  network_hsrpgroups AS h LEFT OUTER JOIN network_subnets AS s ON h.hsrpgroup = s.hsrpgroup
WHERE (h.site_id = 1)
Ergebnis:
SQL-Code:
1|1|NULL
2|1|2
3|1|3
4|1|NULL
5|1|5
6|1|NULL
7|1|NULL
8|1|8
9|1|9
Das Feld hsrpgroup (Typ: String) ist in beiden Tabellen, das entscheidene Feld. Wenn ich jetzt folgendes probiere,
SQL-Code:
SELECT h.hsrpgroup as hsrp, h.site_id, s.hsrpgroup
FROM  network_hsrpgroups AS h LEFT OUTER JOIN network_subnets AS s ON h.hsrpgroup = s.hsrpgroup
WHERE (h.site_id = 1) and (s.hsrpgroup = 2)
bekomme ich folgendes Ergebnis:
SQL-Code:
2|1|2
So soll es ja auch sein. Wenn ich jetzt aber alle NULLs anzeigen lassen möchte, bekomme ich keine Ergebnisse obwohl ja NULL vorhanden ist.
SQL-Code:
SELECT h.hsrpgroup as hsrp, h.site_id, s.hsrpgroup
FROM  network_hsrpgroups AS h LEFT OUTER JOIN network_subnets AS s ON h.hsrpgroup = s.hsrpgroup
WHERE (h.site_id = 1) and (s.hsrpgroup = NULL)
Funktioniert das überhaupt so? Was müsste ich ändern, damit es funktioniert. Ich brauche nur die Zeilen in denen s.hsrpgroup = NULL ist.

Gewünschtes Ergebnis:
SQL-Code:
1|1|NULL
4|1|NULL
6|1|NULL
7|1|NULL
Vielen Dank im voraus. Sven

leddl 22. Dez 2009 12:38

Re: LEFT OUTER JOIN mit NULL-Abfrage funktioniert nicht, war
 
Also ich kenne Abfragen auf NULL nur mit "is NULL"...
Keine Ahnung, ob das beim SQL Server 2005 dann schon anders möglich ist, bei 2000 gehts aber nur so :gruebel:

Piro 22. Dez 2009 12:41

Re: LEFT OUTER JOIN mit NULL-Abfrage funktioniert nicht, war
 
:wall: Oh man, es kann so einfach sein. Diese Variante hatte ich noch nicht.

Vielen Dank.

leddl 22. Dez 2009 13:27

Re: LEFT OUTER JOIN mit NULL-Abfrage funktioniert nicht, war
 
Zitat:

Zitat von daywalker299
:wall: Oh man, es kann so einfach sein. Diese Variante hatte ich noch nicht.

Hehe, freut mich, dass ich auch mal bei ner Datenbankfrage helfen konnte :mrgreen:


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:01 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz