collapse

* Benutzer Info

 
 
Willkommen Gast. Bitte einloggen oder registrieren. Haben Sie Ihre Aktivierungs E-Mail übersehen?

* Wer ist Online

  • Punkt Gäste: 59
  • Punkt Versteckte: 1
  • Punkt Mitglieder: 3
  • Punkt Benutzer Online:

* Forenstatistik

  • stats Mitglieder insgesamt: 13808
  • stats Beiträge insgesamt: 64172
  • stats Themen insgesamt: 8680
  • stats Kategorien insgesamt: 5
  • stats Boards insgesamt: 16
  • stats Am meisten online: 415

Autor Thema: Abfrage mit 2 Tabellen IS NULL funktioniert nicht  (Gelesen 2603 mal)

Offline hmfmartin

  • Newbie
  • Beiträge: 6
Abfrage mit 2 Tabellen IS NULL funktioniert nicht
« am: Mai 25, 2010, 11:35:51 »
Hallo, ich habe mal eine kleine Abfrage geschrieben zu folgender Aufgabe:

"Ermitteln sie welcher Kunde bestellt hat aber keine Lieferung bekommen hat"

meine SQL abfrage sieht folgendermaßen aus...


SELECT DISTINCT T_Kunden.name
FROM T_Kunden, T_Bestellungen, T_Positionen
WHERE T_Bestellungen.bestelldatum IS NOT NULL AND T_Bestellungen.lieferdatum IS NULL;

Angezeigt bekomme ich aber Alle Kunden!!!! und nicht nur die 2 die nicht beliefert wurden

Gruß
martin
 

Offline database

  • Moderator
  • Access Guru
  • *****
  • Beiträge: 4178
Re: Abfrage mit 2 Tabellen IS NULL funktioniert nicht
« Antwort #1 am: Mai 25, 2010, 13:17:52 »
Hallo,

das kann so nicht recht funktionieren.

1. Du hast eine Tabelle in der From-Klausel stehen, die nicht betroffen ist (T_Positionen)
2. Du hast Tabellen ihn der From-Klausel stehen, von denen NICHT bekannt gegeben wurde wie sie zusammenhängen.
3. Betrifft jedoch nicht das Ergebnis direkt ... Du verwendest in der T_Kunden ein reserviertes Wort als Feldnamen (name)


So sollte die Where-Klausel enthalten wie die T_Bestellungen mit der T_Kunden in Beziehung steht (wenn Primärschlüssel und Fremdschüssel KundenID heissen....)
WHERE T_Kunden.KundenID = T_Bestellungen.KundenID AND T_Bestllungen.Bestelldatum Is Not NULL AND T_Bestellungen.Lieferdatum IS NULL
oder

SELECT DISTINCT T_Kunden.[name]
FROM T_Kunden INNER JOIN T_Bestellungen
ON T_Kunden.KundenID = T_Bestellungen.KundenID
WHERE T_Bestellungen.bestelldatum IS NOT NULL AND T_Bestellungen.lieferdatum IS NULL

HTH

Peter
Viele Grüße
Peter

Tipps und Links:
---------------------------------------------------------
1. http://www.donkarl.com
2. http://www.access-entwicklerbuch.de/2007/index.php?page=buch
3. http://www.xlam.ch/pos/rules.htm
3.a Reservierte Worte
4. http://www.functionx.com/vbaccess/index.htm
5. http://www.dbwiki.net

Nicht vergessen: Jede(r) hat mal klein angefangen!
Bitte keine Fragen per PN senden - Fragen gehören ins Forum!