dax4fun
Goto Top

Sql Abfrage Vergleiche zwei Spalten und zeige fehlende einträge

Hi,

habe eine einfache Tabelle KUNDEN und will mit dem heutigen Datum vergleichen welcher Kunde hat Heute nichts gekauft,
in der zweiten Tabelle VERKAUF stehen die Heute zahlenden Kunden

tabelle KUNDEN 
KUNDE
-------------
1
2
3
4

tabelle VERKAUF
KUNDE              DATUM
--------------       --------------
1                   2015-03-15
3                   2015-03-15
4                   2015-03-15

Ausgabe : KUNDE 2, DATUM 2015-03-15
habe alle Variationen mit dem hier probiert :
SELECT a.KUNDE
FROM KUNDEN AS a
LEFT JOIN VERKAUF AS b ON a.KUNDE= b.KUNDE
WHERE b.KUNDE IS NULL and DATUM = 2015-03-15;
habe es in phpmyadmin abgesetzt, doch habe paar mal einen Fehler mit LIMIT 0, 30 bekommen
jetzt bin ich mir nicht sicher ob es doch funktioniert hat und das ein andere Fehler ist

bin echt dankbar
Mit freundlichen Grüßen
dax

Content-ID: 266407

Url: https://administrator.de/forum/sql-abfrage-vergleiche-zwei-spalten-und-zeige-fehlende-eintraege-266407.html

Ausgedruckt am: 23.12.2024 um 15:12 Uhr

Biber
Biber 15.03.2015 aktualisiert um 18:43:17 Uhr
Goto Top
Moin dax4fun,

bitte gib doch die SQL-Engine (Oracle, mySQL, MSSQL..) mit an, dann lässt sich besser helfen

Obwohl... mir ist kein SQL-Blech bekannt, dass ein Datum in dieser Form erkennen könnte..
...  and DATUM = 2015-03-15;

Deshalb kann ich vielleicht nicht konstruktiv helfen.

Grüße
Biber
dax4fun
dax4fun 15.03.2015 um 18:45:08 Uhr
Goto Top
Biber Biber wie immer voll dabei face-smile

mySQL
Biber
Biber 15.03.2015 aktualisiert um 19:28:33 Uhr
Goto Top
Moin Dax4fun,

wenn du das Datum in der WHERE-Klausel in einfache Anführungszeichen setzen würdest (...Datum='2015-03-15', dann wäre dir dein mySQL sicherlich dankbar und würde weniger Fehler werfen.


Ansonsten - es kann natürlich nicht sein, dass du keinen Satz findest in Tabelle b (b.Kunde is null) und gleichzeitig in diesem nicht existenten Satz das Datum der 15.März ist.

Also eher so.
SELECT a.KUNDE
FROM KUNDEN AS a
WHERE Not Exists (SELECT 1 from VERKAUF b 
    WHERE  b.KUNDE =a.KUNDE and b.DATUM = '2015-03-15');  

Grüße
Biber
dax4fun
dax4fun 15.03.2015 aktualisiert um 19:25:39 Uhr
Goto Top
Danke, so gesehen kann ich auch nicht Kochen was du anscheinend auch kannst face-smile