mysql - 计算具有特定评级mysql的餐厅
问题描述
我有一张tripadvisor数据表。有一些列(餐厅、排名、分数、user_name、review_stars、review_date、user_reviews ......)和其他对我的问题没有用的列......
我正在尝试返回每家餐厅有多少 3 星评论,并使用从高到低的排名列列出它们。
我知道我可以使用计数,我正在考虑计数如果(review_stars = 3)然后按等级排序以返回它......我被卡住了,任何帮助将不胜感激。谢谢你。
解决方案
您想要完成的是计算每家餐厅有多少3 星评价..
你真的快到了——你原来的问题确实包含了所有的答案,只是用手写的。想想你在问什么:
“我需要SELECT
那个和每家餐厅restaurants
有多少”——你缺少的基本语法是——将每家餐厅的所有结果分组到一行。 have 3 star reviews
count
GROUP BY
SELECT restaurant, count(*) as 3_star_count from table where review_stars = '3' GROUP BY restaurant
这是一个基本的例子。但是根据您的要求..这种语法应该可以为您提供每家餐厅的 3 星评论数量。
我建议您查看SQL
子句及其含义,正如@Alexis 在之前的评论中所说的那样。WHERE
子句和子句(尤其是这个GROUP BY
)是你要在这里理解的。
推荐阅读
- apache-spark - Pyspark dataframe.limit 很慢
- javascript - Javascript:如何在数组过滤操作中处理 jQuery.ajax 函数调用?
- android - 我如何在android中解析这种类型的JSON结构
- c++ - 如何深拷贝链表对象指针
- c# - 如何在 C# 中编写某个等式?
- r - 如何将公式粘贴到 R 中的 model.matrix 函数中?
- python - Python ftplib 在将文件上传到 FTP 服务器期间向 txt 文件添加新行
- batch-file - 创建将执行以下操作的 .bat 文件
- bitbucket - 仅在 PR 上从 BitBucket Server webhook 构建远程触发 Bamboo?
- javascript - 如何计算 HTML 中图像的点击次数?