2012-11-30 106 views
5

我有一個問題,我想在Visual Studio 2010中產生一個表。我不太確定如何制定我的SQL查詢,形成我的數據源。SQL查詢與條件多表

基本上我有兩張桌子。其中一個包含圖片文件名,並有兩列,分別爲picturefile (PK)username。第二個表格包含三個用戶名列:第一個列表定義一個用戶名,第二個用戶名的朋友以形成朋友關係,第三列是RelationshipID

我想讓我的查詢產生一個表,顯示當前用戶的朋友擁有的圖片表中的所有圖片。 我有參數@currentuser可以使用 所以這將是一個你的朋友的圖片表。

的嘗試我,記住我非常初學者,是這樣的:

SELECT picturefile, username 
FROM  pictures_table1 
WHERE (username = (SELECT User2 FROM friendslist_table1 WHERE  friendslist_table1.Username1 = @currentuser AND friendslist.Username2 <> @currentuser)) 

它給出了一個錯誤,說子查詢不能返回多張值。

謝謝。

回答

3
SELECT f.friendname,p.picturefile from pictures_table1 p 
INNER JOIN friendslist_table1 f 
ON p.username = f.username 
WHERE f.username = @currentuser