[MySQL] 2 Abfragen zu einer zusammenfassen

CikoNo1

Erfahrenes Mitglied
Hallo Leute,

ich brauch mal wieder:rolleyes: eure Hilfe.

Ich habe hier zwei SQL Abfragen:

1. SELECT uid FROM tabelle1 WHERE pid = $pid

2. SELECT * FROM tabelle2 WHERE pid = uid.tabelle1

Wie kann ich diese zwei Abfragen zu einer zusammenfassen?

Liebe Grüße aus dem Schwarzwald
 
Danke aber die schluckt er nicht bekomme das hier:

#1064 - 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 'SELECT uid FROM pages WHERE pid = '118' ) AND sys_language_uid
 
Die Klammer muss doch da hin!

Hier noch mal die Abfrage bei dem der Fehler auftritt:

SELECT * FROM pages_language_overlay WHERE pid = (SELECT uid FROM pages WHERE pid = '118')

Hab auch schon auf mysql.de in der Referenz nachgeschaut. Da wurde IN und ALL vor dem 2. Select vorgeschlagen. Hat aber auch nichts gebracht.
 
dann passt aber das Ende der Fehlermeldung

SQL:
= '118' ) AND sys_language_uid
nicht zu deiner Abfrage.. hast du da noch etwas ergänzt?
 
Warum nicht über ein JOIN ?

Code:
Select plo.* 
From Pages_language_overlay plo 
inner Join Pages p On plo.pid = p.uid 
Where p.pid ='118'
 
Zuletzt bearbeitet:
Hallo,

wenn du den geanu den Befehl
SELECT * FROM tabelle2 WHERE pid = (SELECT uid FROM tabelle1 WHERE pid = $pid)
abgesetzt hast, solltest du ein Ergebnis bekommen.

Ausnahme: Der zwiete SELECT uid FROM tabelle1 WHERE pid = $pid bringt mehr als einen Treffer, denn das wird vom ersten select erwartet.

Ist das Feld pid aus Tabelle1 der primary key?
 

Neue Beiträge

Zurück