Abfrage über mehrere Tabellen

heikomi

Erfahrenes Mitglied
Hi Leute,
ich habe eine Datenbank mit mehreren Tabellen.

Wie kann ich gleiche Spalten (blablaID) in verschiedenen Tabellen so abfragen, das er jeden Wert nur einmal in einer Temp-Tabelle ablegt.

zum Beispiel:
DB_01.Tabelle_01.MsID
DB_01.Tabelle_05.MsID
DB_01.Tabelle_08.MsID
DB_01.Tabelle_11.MsID

aus dennen soll jede ID ermittelt werden und nur einmal in temp_tabelle.MsID gespeichert werden.

Danke für eure Hilfe

Gruss Heiko
 
Ich weiß nicht wie man da auf DISTINCT kommt. Ich behaupte jetzt einfach mal, du musst die Tabellen mit einem JOIN verknüpfen. Da ich jetzt nicht weiß, wie die Daten zusammenhängen (die ID bildet den Schlüssel), fällt es mir schwer Dir ein Beispiel zu liefern.

Kannst Du hier mal die Tabellenstruktur mit ein paar Beispieldaten reinsetzen? Dann gibbet auch ein Beispiel ;)
 
Nagut, um das alles in eine Spalte zu bekommen braucht man noch GROUP_CONCAT.

Sollte eigentlich so funktionieren:
SELECT GROUP_CONCAT(DISTINCT Tabelle_01.MsID, Tabelle_05.MsID, Tabelle_08.MsID, Tabelle_11.MsID) FROM Tabelle_01, Tabelle_05, Tabelle_08, Tabelle_11;
 
MasterEvil,
Ich hab mal nur 2 Tabellen genommen:

PHP:
$query = "SELECT GROUP_CONCAT(DISTINCT Tabelle_01.MsID, Tabelle_05.MsID) FROM Tabelle_01, Tabelle_05";
$ergebnis = mysql_query($query) or die (mysql_error());

Da erhalte ich diese Fehlermeldung:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'DISTINCT Tabelle_01.MsID,Tabelle_05.MsID ) FROM Tabelle_01, Tabelle_05' at line 3

Gruss Heiko
 
MasterEvil,
ich benutzte XAMPP mit Mysql 5.0.15. Na ich werd mal Schluss machen und mir es morgen anschauen.

Danke dennoch für die Tips.

Gruss Heiko
 

Neue Beiträge

Zurück