获取与一列MAX值相对应的其他列?
好的,这是我的查询:
SELECT video_category, video_url, video_date, video_title, short_description, MAX(video_id) FROM videos GROUP BY video_category
当它提取数据时,我得到了video_id的正确的行,但是它为其他的类别提取了每个类别的第一行。 所以,当我得到最大的结果为类别1的video_id,我得到最大ID,但表中的第一行的url,date,标题和说明。
我怎么能拉到与最大ID结果对应的其他列?
编辑:修正。
SELECT * FROM videos WHERE video_id IN ( SELECT DISTINCT MAX(video_id) FROM videos GROUP BY video_category ) ORDER BY video_category ASC
我会尝试这样的事情:
SELECT s.video_id ,s.video_category ,s.video_url ,s.video_date ,s.video_title ,short_description FROM videos s JOIN (SELECT MAX(video_id) AS id FROM videos GROUP BY video_category) max ON s.video_id = max.id
这是你自己的解决scheme相当快