Ergebnis nur wenn alle ds einen wert haben

hallo

ich bin dabei einen query zu basteln, der nur dann ergebnisse bringen soll, wenn ALLE datensätze in einem bestimmten feld einen wert haben.

es gibt ein feld projekt, sprache und datum.
ich selektiere nach projekt, und will für jede sprache (pro projekt) ein ergebnis erhalten, aber nur für die projekte, für die ALLE datensätze ein datum haben bzw. nicht (mehr) null sind.

ist in einem projekt ein datensatz noch ohne datum, dann will ich diesen also nicht sehen.

hat jemand eine idee wie man das innerhalb von sql lösen kann, ohne danach die ergebnisse per php auszuwerten?

danke

michael

Hallo,

SELECT Projekt, Sprache FROM Tabelle
WHERE Projekt IS NOT NULL
AND Datum IS NOT NULL
AND Sprache IS NOT NULL
GROUP BY Projekt, Sprache

Ist es das Gewünschte?

MfG Dominik

hai dominik,

danke für deine überlegung, leider ist das resultat nicht das was ich bauche.
ich habe zb 5 x vietnamese, aber nur 1 x davon steht ein datum im datumsfeld. es wird angezeigt, obwohl es das nur tun soll, wenn auch die restlichen 4 datensätze einen wert im datumsfeld haben.

gruss

michael

SELECT Projekt, Sprache FROM Tabelle
WHERE Projekt IS NOT NULL
AND Datum IS NOT NULL
AND Sprache IS NOT NULL
GROUP BY Projekt, Sprache

Ist es das Gewünschte?

MfG Dominik

Hallo,

SELECT Projekt, Sprache FROM Tabelle
WHERE Sprache IS NOT NULL
AND Projekt NOT IN (SELECT Projekt FROM Tabelle WHERE Datum IS NULL)
GROUP BY Projekt, Sprache

Falls die Spalte Projekt noch NullValues enthält musst du das abfangen.

MfG Dominik

hai

NOT IN ()

das ist ja wirklich eine tolle funktion. ich selektiere die liste die ich nicht haben will und alle die darin nicht vorkommen müssen meine sein!

genau richtig, vielen dank!

mikey

SELECT Projekt, Sprache FROM Tabelle
WHERE Sprache IS NOT NULL
AND Projekt NOT IN (SELECT Projekt FROM Tabelle WHERE Datum IS
NULL)
GROUP BY Projekt, Sprache

Falls die Spalte Projekt noch NullValues enthält musst du das
abfangen.

MfG Dominik