Komplexe SELECT Abfrage über 2 Tabellen

Alles, was MySQL betrifft, kann hier besprochen werden.

Komplexe SELECT Abfrage über 2 Tabellen

Postby samurai » 20. April 2009 19:13

Hallo zusammen,

ich möchte eine Abfrage über 2 Tabellen machen, komm aber nicht auf die richtige Lösung, hab auch lange im Netz gesucht aber nichts konkretes/brauchbares gefunden. Daher brauche ich Hilfe von Profis. Hier ein stark vereinfachtes Beispiel:
Ich habe 2 Tabellen:

1.Tabelle: Gruppen
GruppenNr / Gruppenname / Einlage
1 / Sportler / 20
2 / Reisende / 0
3 / Rentner / 5
...
...

2. Tabelle: Personen
Nr / Name / GruppenNr
1 / Marc / 1
2 / Nils / 1
3 / Nina / 2
4 / Lola / 3
5 / Mani / 3
6 / Lars / 2


Jetzt möchte ich eine SELECT Abfrage machen die folgendermaßen lautet:
Zeig mir alle Namen (aus Tabelle Personen) wo die dazugehörige Gruppe (aus Tabelle Gruppe) eine Einlage von mehr als 0 hat.

Das Ergebnis ist: Marc, Nils, Lola, Mani.

Kann mir jmd. die dazugehörige SELECT Abfrage zeigen?

DAnke vorab!
samurai
 
Posts: 45
Joined: 17. July 2006 13:39

Re: Komplexe SELECT Abfrage über 2 Tabellen

Postby Hanspeter Thöni » 20. April 2009 20:12

Code: Select all
select Personen.Name from Personen
inner join Gruppen on (Personen.GruppenNr = Gruppen.GruppenNr)
where Gruppen.Einlage > 0;


Andere Möglichkeit
Code: Select all
select Name from Personen
where GruppenNr in (select GruppenNr from Gruppen where Einlage>0);



Übernehme aber keine Garantie für fehlerfreiheit, da nicht getestet.
Gruss Hanspeter
User avatar
Hanspeter Thöni
 
Posts: 233
Joined: 17. August 2004 10:29
Location: Schweiz

Re: Komplexe SELECT Abfrage über 2 Tabellen

Postby samurai » 21. April 2009 13:29

Danke!!

Es funktioniert!
samurai
 
Posts: 45
Joined: 17. July 2006 13:39


Return to MySQL

Who is online

Users browsing this forum: No registered users and 5 guests