我有简单的电影数据库,我想知道是否可以通过COUNT订购,每个类别有多少部电影? 我尝试了查询
SELECT COUNT(category), movie_name FROM movies group by category
我收到了4行,这意味着他们都被计算在内。
4喜剧
如果我按照movie_name设置相同的查询和分组,我会得到(几乎)正确的顺序 1喜剧 2恐怖 1西方
但我希望按照每个类别的电影数量来订购 1喜剧 1西方 2恐怖
任何人都可以帮助我吗? 谢谢, 伊凡。
我道歉,但我提出了错误的问题,这就是为什么我没有收到有效查询的原因。如果我有电影名称“Inception,Saw,Star Wars”,并且喜欢那些所有电影都有价值1(真实)的电影,那么我有4条记录就是这样的:Saw 1,Star Wars 1,Star Wars 1和Inception 1.这里是查询SELECT COUNT(like),movie_name FROM movies WHERE like = 1 group by like。就像我说的每个人都有一个值1(这是真的)。现在我需要按计数点赞。
答案 0 :(得分:1)
尝试在第一列使用oder by
(返回计数),使用它的位置为:
SELECT COUNT(movie_name), category FROM movies group by category order by 1 asc;
您还可以在订单查询中使用列别名:
SELECT COUNT(movie_name) as total_movies, category
FROM movies
group by category
order by total_movies asc;
编辑:根据您的输入,您需要按movie_name
分组
SELECT COUNT(like), movie_name
FROM movies
WHERE like=1
GROUP BY movie_name
ORDER BY 1 DESC;