SQL-Statement select where not "folgende"

  • 4 Antworten
  • Neuester Beitrag
Diskutiere SQL-Statement select where not "folgende" im Android App Entwicklung im Bereich Betriebssysteme & Apps.
C

cocojack42

Ambitioniertes Mitglied
Hallo liebes Forum,

ich versuche grade ein SQL-Statement zusammenzubauen. Nur weiß ich nicht ob folgende möglich ist.

Ersteinmal die Situation:

es gibt Benutzer und es gibt Aufgaben.
Hat ein Benutzer eine Aufgabe erledigt, so wird in die Relation "erledigt" die Aufgaben-ID und ein Timestamp "wann" angelegt.

nun möchte ich alle Aufgaben abfragen die noch nicht "erledigt" sind. Ist folgendes möglich:

PHP:
SELECT * 
FROM Aufgabe 
WHERE Aufgabe.ID not IN ( SELECT AufgabeID FROM Erledigt );
 
Kardroid

Kardroid

Stammgast
Hi,

ich glaube, du musst noch ein wenig mehr schreiben.
Select * from Aufgabe auf where auf.ID not in (Select erl.AufgabeID from Erledigt erl WHERE erl.AufgabeID = auf.AufgabeID).
(ungetestet)

Oder so:
Select auf.* from Aufgabe auf, Erledigt erl Where auf.AufgabeID = erl.AufgabeID
(ungetestet)
 
C

cocojack42

Ambitioniertes Mitglied
Teste ich mal aus, ich bin momentan noch am entwerfen des Schemas.
Die Zeweite Lösung kommt mir aus Frühen Studienzeiten noch bekannt vor :D
 
A

amfa

Experte
So auf den ersten Blick sollte dein erstes Statement eigentlich funktionieren.
 
DieGoldeneMitte

DieGoldeneMitte

Experte
Auch nett ist das hier:

Code:
SELECT * FROM aufgaben
WHERE id IN (
  SELECT id FROM aufgaben EXCEPT (SELECT id FROM erledigt)
)