2013-08-05 65 views
0

我現在擁有的sql查詢如下。我嘗試了一些聯合查詢,但他們沒有工作。如何從兩個查詢中只返回一個查詢結果

Select file_path 
from images 
where image_id In (
    Select image_id 
    from temp_images 
    where object_uid IN (
    Select object_uid 
    from object_table 
    where object_status = 2 and object_place like "%some_keyword%"))` 


Select object_uid, object_utitle 
from object_table 
where object_status = 2 and object_place like "%some_keyword%"` 

這兩個查詢可能會返回很多行。我想這樣返回file_path和object_uid。

-Image_id | Object_uid | Object_utitle

-img1 | obj1 |標題1

-img2 | obj2 |標題2

-img2 | obj2 |標題3

有沒有辦法做到這一點?

+0

有多少行是由這兩個查詢返回的?它是否每個都是一個? – Lokesh

+0

您是否在查找包含來自每個或單獨記錄的數據的1條記錄? –

+0

對不起,我的英語。這兩個查詢可能會返回許多行。但我想回到這樣。 Image_id | Object_uid | Object_utitle img1 | obj1 |標題1 img2 | obj2 |標題2 img2 | obj2 |標題3 – Casper009

回答

1

試試這個:

Select a.file_path, b.object_uid, b.object_utitle 
from images a, (Select object_uid, object_utitle 
    from object_table 
    where object_status = 2 and object_place like "%some_keyword%") b 
where image_id In (
    Select image_id 
    from temp_images 
    where object_uid IN (b.object_uid)) 
+0

它的工作原理!謝謝! – Casper009

0
Select object_uid, object_utitle from object_table where object_status = 2 and object_place like "%some_keyword%" LIMIT 0,1 

它將只選擇一個條目,根據您要顯示的內容添加ORDER BY DESC/ASC

+0

這兩個查詢可能會返回許多行。我想這樣返回file_path和object_uid。 -Image_id | Object_uid | Object_utitle -img1 | obj1 |標題1 -img2 | obj2 |標題2 -img2 | obj2 |標題3 有沒有辦法做到這一點? – Casper009

+0

如果您想要返回多於1條的條目,則不要放置限制,但要創建一個循環來打印出所需的所有信息 –

0

您只需連接表。

Select i.Image_id , i.file_path , o.object_uid 
    FROM images i 
    INNER JOIN temp_images t ON t.image_id = i.image_id 
    INNER JOIN object_table o ON o.object_uid = t.object_uid 
    WHERE object_status = 2 and object_place like "%some_keyword%" 
0

使用多個內部連接,你應該嘗試類似的東西:

SELECT imgs.image_id, obj.object_uid, obj.object_utitle 
    FROM images AS imgs 
INNER JOIN temp_images AS tmp_imgs 
    ON tmp_imgs.image_id = imgs.image_id 
INNER JOIN object_table AS obj 
    ON tmp_imgs.object_uid = obj.object_uid 
WHERE obj.object_status = 2 
    AND obj.object_place LIKE "%some_keyword%" 
相關問題