2012-08-01 73 views
1

我不是那种在sql中的经验,所以请原谅,如果它不是一个很好的问题,但我研究了几乎3-4天,但无法解决。 我的问题是我有一个表中有多个图像名称,所以我必须做的是谁是一个特定用户的追随者,我必须从该表中获取图像,所以一个用户可以有多个追随者,所以我必须获取所有追随者发布的图片。 这是我正在使用的子查询代码片段。子查询返回多行的内部查询

SELECT id, 
     outfit_image, 
     img_title, 
     description 
FROM outfitpic_list r2 
WHERE Email=ANY(SELECT being_followed 
       FROM follower_table 
       WHERE follower='[email protected]') 

所以内部查询这里返回多个值,每个值(being_followed)我有获取所有的图像,并显示它,但此查询每次我得到的只有一个image.I试过,但也没有解决。

表结构: - Outfitpic_list表

id|outfit_image|datetime|Email|image_title|description 

Follower_table

bring_followed|follower 

请帮帮忙,我坚持.. !! 谢谢.. !!

+0

请显示相关的表结构。还可以使用代码标签更清晰地显示SQL查询。 – kgautron 2012-08-01 20:31:16

+0

@ kaykay: - 谢谢休息。 表结构只有这些列,你想要别的东西吗? 请让我知道。 – 2012-08-02 05:56:02

回答

1

我认为你的问题可能是“电子邮件”和“任何”之间的=符号。试试这个说法:

SELECT 
    id, 
    outfit_image, 
    img_title, 
    description 
FROM outfitpic_list r2 
WHERE Email IN 
(
    SELECT being_followed 
    FROM follower_table 
    WHERE follower='[email protected]' 
) 

这是相同的声明,没有=符号,ANY关键字用IN代替。 (我把它清理了一下,使其更易读)

+1

'= ANY'与'IN'相同 – podiluska 2012-08-01 20:34:06

+0

@podiluska我没有意识到这一点,谢谢!在这种情况下,正如KayKay提到的那样,我们可能需要查看表结构以提供更多信息:) – Kreg 2012-08-01 20:39:52

+0

是的 - 我无法在查询中看到缺陷,因此无论是我的触摸还是其他地方 – podiluska 2012-08-01 20:52:08