我的数据库里有两张表。表1列出了“时间表”及其相应的所有者和标题。
表2是一个用户列表,这些用户可以访问时间线,但他们是追随者,而不是所有者。
我试图编写一个查询,输出链接到两个表中任意一个用户id的lineID和相应标题。
A query for userID 1 would ideally output:
1 a
2 b
3 c
6 f
希望这不会太混乱,但其目的是用给定用户ID的行ID和标题填充动态生成的选择框。。。
Table 1 ("owners")
--------------------------
| LineID | UserID | Title |
| 1 | 1 | a |
| 2 | 1 | b |
| 3 | 1 | c |
| 4 | 2 | d |
| 5 | 2 | e |
| 6 | 1 | f |
--------------------------
Table 2 ("followers")
----------------------------
| RowID | LineID | UserID |
| 1 | 1 | 1 |
| 2 | 1 | 2 |
| 3 | 3 | 1 |
| 4 | 3 | 2 |
| 5 | 2 | 2 |
| 6 | 6 | 1 |
----------------------------
我试着用:
SELECT title
FROM `lines`
LEFT JOIN follow
ON follow.user_id = lines.user_id
WHERE follow.user_id = 1
结果产生了重复的行。
理想情况下,我需要的输出应该是一个数组,由与该用户id相关联的所有lineID和title组成。
最佳答案
select LineId, Title
from owners
where LineId in (select LineId from followers group by LineId )
order by owners.LineId