Ich habe zwei hypothetische TabellenWie erhalten Sie Spalten, die in einer anderen Tabelle referenziert werden, mehrmals? So in SQL Server
Country
(Countrycode, Countryname)Groups
(GroupId, Gruppenname, Countrycode)
Ich weiß, dass Gruppe ein reserviertes Wort ist, aber es ist nur um des Beispiels willen
Was ich bekommen möchte, ist die Länder mit 3 oder mehr Gruppen ohne die Verwendung einer anderen Referenztabelle.
Ich habe versucht, die folgenden
select *
from Country c
where CountryCode in (select g.CountryCode
from Group g
where g.CountryCode=c.CountryCode
group by g.CountryCode
having count(*) > 3)
Aber ich bekomme keine Ergebnisse I die folgenden Daten in meiner Groups
Tabelle haben:
|GroupId|GroupName|CountryCode|
| 1 | 'asd' | USA |
| 4 | 'fgh' | USA |
| 3 | 'jkl' | USA |
| 4 | 'zxc' | ARG |
Das Ergebnis, das ich will, ist:
|CountryCode| CountryName|
| USA |UnitedStates|
weil dort 3 Gruppen mit CountryCode = USA
das Entfernen von Versuchen Where-Klausel innerhalb der geschachtelten Auswahl –