获取与一列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相当快