2016-04-27 8 views
0

meine erste Abfrage:Wie bekomme ich zwei Spalten von zwei verschiedenen Tabellen mit id = id und id = 9?

SELECT `oc_banner_image_description`.`title` 
FROM `oc_banner_image_description` 
WHERE `banner_id`=9 

meine zweite Abfrage:

SELECT `oc_banner_image`.`image` FROM `oc_banner_image` WHERE `banner_id`=9 

, wie diese zwei Abfragen in einzelne Abfrage machen schließt sich mithilfe von SQL.

+0

Anders als bei einem Join? –

+0

@ IgnacioVazquez-Abrams Ich denke, er will einen Beitritt. – Hogan

+1

@Hogan: Ich weiß. Ich war witzig. –

Antwort

0

Versuchen Sie, diese (Möglicherweise müssen Sie die einfachen Anführungszeichen ein bisschen anders als verwenden, was ich habe)

SELECT `i`.`image`, `d`.`title` 
FROM `oc_banner_image` as `i`, `oc_banner_image_description` as `d` 
WHERE `c.banner_id` = `i.banner_id` 
and i.`banner_id`=9 

Wenn dies nicht funktioniert, versuchen Sie dies auf beiden Tabellen

select banner_id, count(banner_id) 
    from oc_banner_image 
group by banner_id order desc; 

Dies wird zeigen, Sie, wenn Sie mehrere banner_id in der oc_banner_image Tabelle haben.

+0

Korrektur in Ihrer Abfrage, SELECT 'i'.image',' d''title' FROM 'oc_banner_image' als' i', 'oc_banner_image_description' als' d' WHERE' d'.banner_id' = 'i' .'banner_id' und 'i'.'banner_id' = 9 und Ergebnis i got Bild \t Titel \t Katalog/4.jpg \t Indutrues 5 Katalog/4.jpg \t Industrie 4 Katalog/4.jpg \t Industry 3 Katalog/4.jpg \t Industry 2 catalog/4.jpg \t Industrie 1 catalog/3.jpg \t Indutrues 5 catalog/3.jpg \t Industry 4 catalog/3.jpg \t Industrie 3 catalog/3.jpg \t Industry 2 catalog/3.jpg \t Industrie 1 catalog/2.jpg \t Indutrues 5 catalog/2.jpg \t Industry 4 catalog/2.jpg \t Industrie 3 Katalog/2. jpg \t Industrie 2 Katalog/2.j –

+0

Gut entdeckt, sieht es jetzt ok aus? Noch wichtiger, hat es geholfen? – Harry

+0

Nein ich brauche nur 5 Reihen..wie Katalog/5.jpg Indutrues 5, Katalog/4.jpg Indutrues 4, Katalog/3.jpg Indutrues3, Katalog/2.jpg Indutrues 2, Katalog/1.jpg Indutrues 1, –

2

Verwendung von Standard-Join-Syntax würde wie folgt aussehen:

SELECT `oc_banner_image_description`.`title`, `oc_banner_image`.`image` 
FROM `oc_banner_image_description` 
JOIN `oc_banner_image` ON `oc_banner_image_description`.`banner_id` = `oc_banner_image`.`banner_id` 
WHERE `oc_banner_image`.`banner_id`=9 
+0

Ich habe unter Fehler, Fehler SQL-Abfrage: Dokumentation SELECT 'oc_banner_image_description'.'title',' oc_banner_image'.'Image' FROM' oc_banner_image_description' JOIN '' oc_banner_image' ON oc_banner_image_description'.'banner_id' = '' WHERE oc_banner_image'.'banner_id' banner_id' = 9 LIMIT 0, 25 MySQL gesagt: Dokumentation # 1052 - Spalte 'banner_id' in Where-Klausel ist mehrdeutig –

+0

@Tharunkumar - ok, das ist einfach zu beheben, zu beheben ... machen Sie es nicht mehrdeutig. – Hogan

+0

wie geht das? bitte führen Sie mich –

0

Versuchen Sie, diese SELECT bannerDesc.title , bannerImage.image FROM oc_banner_image_description bannerDesc join oc_banner_image bannerImage on bannerDesc.banner_id = bannerImage.banner_id WHERE bannerImage.banner_id=9

Verwandte Themen