用于条件的多个表的SQL查询

时间:2012-11-30 04:33:32

标签: sql

我在Visual Studio 2010中尝试生成的表存在问题。我不太确定如何制定构成数据源的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))

它表示子查询无法返回多个值。

谢谢。

2 个答案:

答案 0 :(得分:3)

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

答案 1 :(得分:2)

请查看JOIN功能,它完全符合您的要求。