日期:2014-05-19  浏览次数:20451 次

请教:查询分组语句.
请教:查询分组语句.
执行:select   id,name,movie_id   from   video_list得到:
id     name    movie_id
1       分组1 151
2       分组1 151
3       分组1 151
4       分组2 156
5       分组2 156
6       分组2 156
7       分组2 156
8       分组3 179
9       分组3 179
执行:select   name,movie_id   from   Movie
得到:
电影名1   151
电影名2   156
电影名3   179
我想得到的结果是以movie_id为分组的其中id最大的信息,并按id   降序排列:
9       分组3 电影名3
7       分组2 电影名2  
3       分组1 电影名1

------解决方案--------------------
select max(video_list.id) as id,
video_list.name,
video_list.movie_id
from video_list,Movie where video_list.movie_id=Movie.movie_id
group by video_list.name,video_list.movie_id
------解决方案--------------------
select a.id, a.name, b.name
from video_list a, Movie b
where a.movie_id = b.movie_id
and not exists(select 1 from video_list where movie_id = a.movie_id and id > a.id)
order by a.id desc