2012-11-19 34 views
0

我有這個疑問,從表中選擇一個行: -從表中選擇多個行

select identifier, name from content where rawid= 
     (select contentid from content where rawid='002cd122-f604-4093-b242-1bd12eafaceb') 

我想查詢將從content,使得每行,從另一個表對應一個rawid選擇所有的行,稱爲rawIdentifiers。 我想從這個表給rawid,rawIdentifiers: -

enter image description here

例如,該查詢會給我一個行: -

select identifier, name from content where rawid= 
      (select contentid from content where rawid='00504a25-bc6a-4edd-8c30-cb57e12b7c3d') 

這會給其他行:

select identifier, name from content where rawid= 
        (select contentid from content where rawid='002cd122-f604-4093-b242-1bd12eafaceb') 

等等。

我想要一個查詢來獲取表中的所有行。我怎樣才能做到這一點?

+0

這聽起來像你需要做一個加入。如果沒有這兩個表的DDL,將很難提供語法。你可以發佈DDL嗎? –

回答

1

聽起來像你想要加入。你可能想要閱讀連接,以便你能夠理解他們到底在做什麼。我想你想要的東西沿線︰

select identifier, name 
from content 
inner join rawidentifiers ON content.identifier = rawidentifiers.identifier 

我不確定你的確切的表結構,所以我猜的列名稱。

0

我想你想要一個內部連接爲你做匹配。既然你沒有爲你的content表提供的表結構我想結合件的示例代碼給你一個工作示例:

select identifier, name 
from content 
inner join content ON rawid = (select contentid from content where rawid='00504a25-bc6a-4edd-8c30-cb57e12b7c3d') 

這裏的想法是從content獲取所有記錄,但每條記錄都有來自content的另一個記錄加入到它。加入過程與您的where子句類似,完成1條記錄。