Frage von Timolo92, 29

SQL: Nur Datensätze ausgeben die in Feld2 nur ein mal vorkommen?

Hallo. Ich habe die Datenbank "Angestellter" mit den Tabellen Nachname und Gehalt. Ich möchte nun alle namen und Gehälter der Angestellten ausgeben lassen wo der Gehalt nur einmal vorkommt. Also wenn z. B. zwei Angestellte 10.000 € Gehalt haben sollen die nicht ausgegeben werden. Ich habe es versucht mit:

SELECT Gehalt,Nachname FROM Angestellter WHERE Gehalt=DISTINCT. Das führt jedoch zu einer Fehlermeldung.

Antwort
von milonguero, 21

select gehalt, nachname from angestellter group by gehalt

Kommentar von Timolo92 ,

Vielen Dank für deine Antwort. Führt jedoch nicht ganz zum Ergebnis. Mit deiner Version erhalte einen Datensatz wo der Gehalt mehrfach vorkam:

Folgende Daten habe ich :

30.000, Smith

25.000,Bong

28.000, Bamer

25.000, Yong

Nach der Abfrage wird NUR der Datensatz von Yong nicht ausgegeben. Der Datensatz von Bong soll aber ebenfalls NICHT ausgegeben werden, da er den selben Gehalt von Yong hat.

Antwort
von ostfriesenjung, 13

SELECT COUNT(*) AS COUNT,Gehalt,Nachname FROM Angestellter GROUP BY Gehalt HAVING COUNT(*)=1

Kommentar von Timolo92 ,

Das habe ich gesucht! Besten Danke!

Antwort
von DataWraith, 16

Vermutlich heisst es 'SELECT DISTINCT ...'

Keine passende Antwort gefunden?

Fragen Sie die Community

Weitere Fragen mit Antworten