你好,
我有两个表:
episodes:
- id
- episode
- season
- series
- title
series:
- id
- name
我想收到最后添加的剧集(不重复系列)
例如: 我在《行尸走肉》中添加了两集,在《House M.D》中添加了一集。
所以,结果应该是:
Episode 2 - Walking Dead
Episode 1 - House M.D.
此时我的查询是:
SELECT *, e.id AS episodeId, s.id AS seriesId
FROM episodes AS e
LEFT JOIN series AS s ON e.series = s.id
ORDER BY e.id DESC LIMIT 25
最佳答案
尝试使用 MAX(e.id)
SELECT MAX(e.id) AS episodeId, s.id AS seriesId
FROM episodes AS e
LEFT JOIN series AS s ON e.series = s.id
GROUP BY s.id
如果您需要更多列,请使用联接
SELECT *
FROM episodes AS ep
JOIN
(SELECT MAX(e.id) AS episodeId, s.id AS seriesId
FROM episodes AS e
LEFT JOIN series AS s ON e.series = s.id
GROUP BY s.id) temp
ON temp.episodeId =ep.id
关于mysql - 独特的一栏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26611007/