Guten Abend
ich weiss nicht wie ich den Titel am einfachsten benennen soll. Ich habe folgende zwei Datenbanken:
db1:
ID | Nummer | Farbe
1 | 100000 | Blau
2 | 100001 | Grün
3 | 100002 | Rot
db2
ID | IDDB1 | NummerDB2 | Name
1 | 1 | X101 | Hans
2 | 1 | X102 | Peter
3 | 3 | X103 | Tom
Nun habe ich folgende MySQL Abfrage:
SELECT db1.*, db2.* FROM db1 db1
LEFT JOIN db2 db3 ON (db1.ID=db2.IDDB1)
WHERE db1.ID="'.intval($_REQUEST['ID']).'"
Nun ist es so, dass ich durch das LEFT JOIN noch alle Wertde auslesen kann aus db2. Jedoch soll er mir die Einträge aus db1 einmal anzeigen. Er zeigt mir jedoch den Eintrag mit der ID1 doppelt an, da in der db2 zwei Einträge mit der IDDB1 sind. Kann ich das irgendwie verhindern?
Dachte erst CONCAT könnte passen aber CONCAT(db1.*) gibt ein fehler, und CONCAT(db1.ID), db1.*, db2.* führt auch nicht zum ergebnis. Es gab da eine Funktion aber ob es concat war...?
Was mach ich da falsch?
SORRY Group BY ist die Lösung. Was war den Concate?
Gruss
Koda
ich weiss nicht wie ich den Titel am einfachsten benennen soll. Ich habe folgende zwei Datenbanken:
db1:
ID | Nummer | Farbe
1 | 100000 | Blau
2 | 100001 | Grün
3 | 100002 | Rot
db2
ID | IDDB1 | NummerDB2 | Name
1 | 1 | X101 | Hans
2 | 1 | X102 | Peter
3 | 3 | X103 | Tom
Nun habe ich folgende MySQL Abfrage:
SELECT db1.*, db2.* FROM db1 db1
LEFT JOIN db2 db3 ON (db1.ID=db2.IDDB1)
WHERE db1.ID="'.intval($_REQUEST['ID']).'"
Nun ist es so, dass ich durch das LEFT JOIN noch alle Wertde auslesen kann aus db2. Jedoch soll er mir die Einträge aus db1 einmal anzeigen. Er zeigt mir jedoch den Eintrag mit der ID1 doppelt an, da in der db2 zwei Einträge mit der IDDB1 sind. Kann ich das irgendwie verhindern?
Dachte erst CONCAT könnte passen aber CONCAT(db1.*) gibt ein fehler, und CONCAT(db1.ID), db1.*, db2.* führt auch nicht zum ergebnis. Es gab da eine Funktion aber ob es concat war...?
Was mach ich da falsch?
SORRY Group BY ist die Lösung. Was war den Concate?
Gruss
Koda
Kommentar