列出所有' Feed'并且只有2个用户有关系

时间:2015-08-16 00:34:35

标签: mysql sql inner-join

我需要列出表feed中的所有项目,并且只显示订阅内容的前2位用户,但我不能将仅列出2位用户的查询放在一起{ {1}}。

我已经尝试了 N 查询和子查询,但无法获得预期的结果。最近的是使用limit 2,但如果它连接所有用户并且不允许仅限于两个首字母,并且必须使用group_concat来实现此目的。

<子> 查询

substring_index

<子> 结果

select
  feed.id
, feed.type
, user.name

 from feed
 inner join user on user.id = feed.user
 group by feed.type

<子>的预期

Array(
    [0] => Array(
            [id] => 1
            [type] => Comedy
            [name] => Mike
        )

    [1] => Array(
            [id] => 3
            [type] => War
            [name] => John
        )

    [2] => Array(
            [id] => 6
            [type] => Terror
            [name] => Sophia
        )
)

1 个答案:

答案 0 :(得分:0)

我不确切知道您的表的架构,但尝试使用group_concat尝试的相同方法,但加入子查询,如:

...
inner join 
(
  select user.id, user.name from user limit 2
) as x on x.id = feed.user
...