`

MySQL仿淘宝页面评论评分统计SQL

阅读更多

假设淘宝有一张商品评论表,存储在MySQL中.表设计如下:

IDproductlist_comment主键,

UserID为用户的ID,

ProductID为商品ID

Content为评论的内容,

CreateTime为评论的时间.

Star为商品评分分数,取值为1-5;

ProductID和UserID已经分别建立索引. 

SELECT ID, ProductID, UserID, Star, Content, Createtime 
FROM mysqldb.productlist_comment limit 10

 查询得到如下评论数据:


要求在商品页面需要计算出,

好评数(Star>3),差评数(Star<3),中评数(Star=3),

以及评论总数,平均Star分数(如4.7), 好评百分比.

正对上面需求, 整理SQL如下: 

select SUM(s.Star45) as Star45Num,
       SUM(s.Star3)  as Star3Num,
       SUM(s.Star12) as Star12Num,
       SUM(s.Record) as TotalNum,
       AVG(s.starValue) AS AverageStar,
       SUM(s.Star45)/SUM(s.Record) AS Star45Percent
from(
select case when pc.star>3 then 1 else 0 end as Star45,
       case when pc.star=3 then 1 else 0 end as Star3,
       case when pc.star<3 then 1 else 0 end as Star12,
       pc.star as starValue,
       1 AS Record
from mysqldb.ProductList_comment pc
where pc.ProductID=15792
) as s

 得出的数据展现如下: 



  • 大小: 42.7 KB
  • 大小: 9.8 KB
0
1
分享到:
评论

相关推荐

    仿淘宝-仿淘宝平台-仿淘宝平台源码-仿淘宝平台java代码-基于Web的仿淘宝平台设计与实现-仿淘宝平台设计与实现-java代码

    仿淘宝-仿淘宝平台-仿淘宝平台源码-仿淘宝平台java代码-仿淘宝平台设计与实现-基于springboot的仿淘宝平台-基于Web的仿淘宝平台设计与实现-仿淘宝网站-仿淘宝网站源码-仿淘宝网站java代码-仿淘宝项目-仿淘宝项目代码...

    Oracle Sql语句转换成Mysql Sql语句

    在数据库管理领域,Oracle SQL和MySQL SQL是两种广泛使用的SQL方言,它们在语法和功能上存在一定的差异。当需要将一个基于Oracle SQL的应用程序迁移到MySQL环境时,就需要进行SQL语句的转换工作。本项目提供了一个...

    mysql转化成sql server sql转化成mysql工具

    标题提到的“mysql转化成sql server”和“sql转化成mysql工具”就是解决这个问题的关键。 首先,我们来讨论MySQL到SQL Server的转换。MySQL是一种开源、轻量级的DBMS,适合小型到大型的应用场景。而SQL Server则...

    数据库统计sql脚本

    数据库统计sql脚本 mysql数据库

    mysql frm转sql

    MySqlFrm.exe是c#版本的frm转sql工具,需要.net 4.0与mysql环境,CMD命令行如下: mysqlfrm &lt;username&gt; &lt;password&gt; &lt;port&gt; 例如: mysqlfrm root pass 3306 c:\dbcopy 会将c:\dbcopy目录下所有的frm转换为...

    mysql sqlapi代码

    mysql sqlapi代码示例,sqlapi链接各类数据库mysql、db2、oracle、sqlserver、sqllite等等

    presto sql 与mysql sql 对比.pdf

    Presto SQL 与 MySQL SQL 对比 基础 Presto SQL 和 MySQL SQL 都是关系型数据库管理系统,但它们之间存在一些差异。在 Presto SQL 中,字段名和表名使用双引号括起来,而在 MySQL SQL 中,字段名和表名使用反引号...

    利用MysqlODBC把Sqlserver数据库导入到Mysql中

    将mysql数据库转换为sql server的数据库,或者将sql server数据库转换为mysql的数据库,在nt环境下很多时候都会用到。使用mysql odbc后就比较好办,可以使用sql server的管理工具,也可以使用mysql的管理工具,更可以...

    MySQL导入.sql文件及常用命令

    MySQL 导入.sql 文件及常用命令 MySQL 是一种关系型数据库管理系统,广泛应用于 Web 应用程序中。 MySQL 中有多种方式可以导入.sql 文件,并且提供了许多常用命令来管理和维护数据库。 一、导入.sql 文件 在 ...

    pc端仿淘宝-pc端仿淘宝系统-pc端仿淘宝系统源码-pc端仿淘宝管理系统-基于Web的pc端仿淘宝系统设计与实现-java代码

    pc端仿淘宝-pc端仿淘宝系统-pc端仿淘宝系统源码-pc端仿淘宝管理系统-pc端仿淘宝管理系统java代码-pc端仿淘宝系统设计与实现-基于springboot的pc端仿淘宝系统-基于Web的pc端仿淘宝系统设计与实现-pc端仿淘宝网站-pc端...

    连接mysql sqlserver的两个数据库

    MySQL和SQL Server分别是两种广泛应用的关系型数据库系统,由不同的公司开发:MySQL由Oracle公司维护,而SQL Server则是微软的产品。有时,出于业务需求,我们需要在这些不同的数据库之间进行数据交换或同步。本文将...

    mysql实例sql文件

    MySQL是一个广泛使用的开源关系型数据库管理系统(RDBMS),它基于结构化查询语言(SQL)进行数据操作。在本主题中,我们重点关注两个关键文件——`populate.sql`和`create.sql`,它们在MySQL实例中扮演着重要的角色...

    SQL Server转换为MySQL工具

    SQL Server是微软公司推出的一款关系型数据库管理系统,而MySQL则是由Oracle公司维护的开源、免费的DBMS。有时,由于业务迁移、成本优化或者技术栈的变化,用户可能需要将SQL Server的数据转换到MySQL中。这时,...

    oracle sqldeveloper连接mysql、SQLServer第三方dll

    解决oracle sqldeveloper无法连接mysql、SQLServer问题,sqlDeveloper是ORACLE数据库开发工具,自带的是无法连接MS SQL Server以及mysql的,想连接的话需要第三方工具。 使用方法: 解压出来后将2个jar放入jlib...

    mysql 统计一天24小时数据默认补0SQL

    ### MySQL 实现一天24小时数据统计并默认补0的方法 在进行数据分析时,我们经常会遇到需要统计一天内每个小时的数据情况。为了确保统计数据的完整性,对于那些在某小时内无记录的情况,通常需要将该小时的数据设为0...

    通过SQL Server操作MySQL的步骤和方法

    "SQL Server 操作 MySQL 的步骤和方法" 在多种数据库环境下,经常会遇见在不同数据库之间转换数据和互相进行操作的情况。下面是使用 SQL Server 操作 MySQL 的步骤和方法的详细说明: 1. 操作前的准备 在 SQL ...

    仿淘宝网多用户网络商城购物系统源码sql正式版

    该资源名为"仿淘宝网多用户网络商城购物系统源码sql正式版",是一个基于SQL数据库的、模仿淘宝网功能的在线购物系统源代码。这个系统设计的目标是为多个商家提供一个平台,让用户可以在同一平台上浏览、购买不同商家...

    pc端仿淘宝-pc端仿淘宝系统-pc端仿淘宝系统源码-pc端仿淘宝管理系统-基于springboot的pc端仿淘宝系统-java

    pc端仿淘宝-pc端仿淘宝系统-pc端仿淘宝系统源码-pc端仿淘宝管理系统-pc端仿淘宝管理系统java代码-pc端仿淘宝系统设计与实现-基于springboot的pc端仿淘宝系统-基于Web的pc端仿淘宝系统设计与实现-pc端仿淘宝网站-pc端...

    基于C# winform+mysql人事工资管理系统源码+sql文件+运行说明.zip

    基于C# winform+mysql人事工资管理系统源码+sql文件+运行说明.zip 基于C# winform+mysql人事工资管理系统源码+sql文件+运行说明.zip 基于C# winform+mysql人事工资管理系统源码+sql文件+运行说明.zip 基于C# winform...

    springboot + mybatis +mysql+ sqlserver 双数据源

    本项目"springboot + mybatis +mysql+ sqlserver 双数据源"正是针对这种需求的一个解决方案,它利用SpringBoot框架、MyBatis持久层框架以及MySQL和SQLServer两种数据库,实现了数据源的自动切换,以满足不同业务场景...

Global site tag (gtag.js) - Google Analytics