草庐IT

php - 计算评级系统的平均值

我想计算评级系统的平均值,但我在innodb中有普通表,在json中有一个名称为“reviews”的列,结构如下:{"comments":[{"name":"Jonh","text":"nicephone","star":4},{"name":"igon","text":"notgood","star":2},{"name":"marco","text":"inotlikethis","star":3},{"name":"david","text":"goodproduct","stelle":5}]}现在我需要计算平均星数。它是在sql中还是在php中?在sql中我不知道如何,在ph

mysql - 触发更新另一个表中的行

这是一个select语句,用于计算我数据库中歌曲的平均评分SELECT*,(tab.rating_sum/tab.rating_count)asrating_averageFROM(SELECTsong_id,COUNT(rating)rating_count,SUM(rating)rating_sumFROMratingsGROUPBYsong_id)tabINNERJOINSONGSWHERESONGS.id=tab.song_id当在RATINGS中插入新评级时,我需要将RATINGS表中的列rating_average插入到SONGS表中。我还需要确保它进入正确的song_id

mysql - 如何在 MySQL 中存储平均评分?

哪种MySQL数据类型最适合存储平均评分值,例如IMDB上的电影评分?float,十进制?或者,如果我在PHP中将实际值四舍五入到小数点后两位并将其保存为INT(8.323243->8.32->832),它可能会工作得更快? 最佳答案 你不关心精度,所以没必要用小数。如果只想使用整数,请使用int。否则,使用float或double。在PHP中首先对其进行四舍五入对您没有任何好处。在PHP中将它在int和double之间转换比在数据库中存储double要慢。 关于mysql-如何在MyS

mysql - 按评级类型分组?

我有两个表:ab_消息用户编号标题内容问题和ab_message_rating:编号用户编号消息编号创建于更新时间ab_message与ab_message_rating是一对多关系。ab_message_rating中的每个条目都有1、2或3作为评级值。所以我想在一个查询中选择消息和所有相关的表条目。关键是,我需要在此查询评级中按值计算。例如,结果应该是:Messageabchas5entriesofrating1,7entriesofrating2,and10entriesofrating3如何在查询中做到这一点?像GroupBy和AJoin这样的东西?

php - MySql 调查不同查询

大家好,我真的在为MySql查询而苦苦挣扎,我有一个名为“info”的表,其中有一个名为“rating”的列,我的评分在1-10之间。现在我需要生成一个百分比值,表示1-6和7-8以及9-10有多少评级,但我需要它们拼命显示,然后我需要第二个查询来减去百分比值1-6和9-10的结果。下面的查询与我从所有研究中得到的尽可能接近,但是我不知道如何只获得1-6的评级百分比,而不是全部,也不知道如何获得第二个查询来减去1-6和9-10评分百分比。SELECTrating,COUNT(*)ASCount,(COUNT(*)/_total)*100ASPercentegeFROMinfo,(SEL

mysql - 我将如何在我的数据库设计中实现星级评分系统?

我目前正在制作一个Android应用程序,我希望允许用户对其他用户发布的帖子进行评分。这是我目前的设计,但是,我会将评级作为单独的表还是包含在媒体上传表中?如果它是一个单独的表,它会像这样吗?评级表:(Rating,PostID,Rating_Count,Average_Rating)如果我的设计有任何其他问题,也将不胜感激! 最佳答案 这完全取决于您希望评分如何运作、谁投赞成票或反对票、您是否跟踪每个投票的人以避免同一个人投多票等。这就是我要做的:为每个投票添加一个唯一的数字(长?)RatingID字段,将PostID字段链接到C

php mysql 检查供应商是否有 3 个连续低评级

在我的软件评级表上,我有4个字段。id自增rvid供应商ID评级日期评分实际数值评分在过去的几个月里,我已经用它做了很多,但这次我被难住了,我无法在脑海中清楚地了解最好的方法。我想做的是找出供应商是否有3个低“连续”评级。如果他们的最后三个评分小于3,那么我想标记他们。我已经玩了几个小时了,所以我想我会问(不是答案),而是一些路径方向只是为了插入我前进,我在这里陷入了思考。我已经尝试过GROUPBY和几个ORDERBY但这些尝试并不顺利,所以我想知道这是否不是mysql答案而是php答案。换句话说,也许我只需要利用我目前所拥有的,然后通过usort等移动到php方面,然后那样做。这是我

PHP:星级评定系统的概念?

关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。关闭2年前。Improvethisquestion我正在使用PHP/MYSQL/JQUERY。我有一个有新闻版block的网站。在新闻详细信息页面上,我想添加星级评分系统,允许用户对新闻报道进行评分。我正在使用这个jquery评级系统http://www.fyneworks.com/jquery/star-rating/现在,我不知道数据库结构是什么,也不知道我需要用PHP编写什么代码。我需要为此应用什么逻辑,比如如

mysql - 使用大量连接优化 MySQL 查询

我目前运营着一个网站,该网站在列表中跟踪最新的分数和评分。该列表包含数千个经常更新的条目,并且该列表应该可以按这些分数和评级列进行排序。我获取这些数据的SQL目前看起来像(大致):SELECTe.*,SUM(sa.amount)ASscore,AVG(ra.rating)ASratingFROMentrieseLEFTJOINscore_adjustmentssaONsa.entry_id=e.idHAVINGsa.createdBETWEEN...AND...LEFTJOINrating_adjustmentsraONra.entry_id=e.idHAVINGra.rating>0

mysql - 你的 SQL 语法有错误...在 'float)/CAST(rating_count AS float)) as average_rating from document' 附近

查询如下selectid,IF(rating_count=0,null,CAST(rating_sumASfloat)/CAST(rating_countASfloat))asaverage_ratingfromdocumentdleftjoindocument_aggregate_ratingusing(id)whereidin(123);我得到的错误ERROR1064(42000):YouhaveanerrorinyourSQLsyntax;checkthemanualthatcorrespondstoyourMySQLserverversionfortherightsyntaxt