sql-server 使用两个不同的表进行计数和分组

vhipe2zx  于 2022-10-31  发布在  其他
关注(0)|答案(1)|浏览(189)

| 电影id|职务名称|
| - -|- -|
| 一个|玩具总动员|
| 2个|朱曼吉|
| 2个|朱曼吉|
| 一个|玩具总动员|

第二张table

| 电影id|评级|
| - -|- -|
| 一个|五个|
| 2个|四个|
| 一个|四个|
| 2个|四个|
我有两个表,其中有几个列类似于下面这样。
我的问题陈述是
--显示评分最高的电影,并显示电影id和电影名称(某部电影的评分数应大于200,按降序打印)
我尝试这样做,但出现如下错误
列'vtopmovie.movieid'在选择列表中无效,因为它未包含在聚合函数或GROUP BY子句中”

create view vtopmovie as
select m.movieid, m.title, r.rating from movies m, ratings r
where m.movieid=r.movieid

select * from vtopmovie

select top(200) movieid, sum(rating) from vtopmovie
group by title

那么,什么是最好的查询呢?

vlju58qv

vlju58qv1#

如果要获取movieid和电影名称及其分级,则查询应如下所示

select top(200) movieid, title, sum(rating) from vtopmovie
group by movieid, title

相关问题