Mysql之统计数据
2016-04-21 15:32
816 查看
计算表中数据的行数
Select count(*) from shohin;
Select count(shiire_tanka) from shohin;
计算和值
Select sum(hanbai_tanka) from shohin;
Select sum(hanbai_tanka) ,sum(shiire_tanka) from shohin;
--返回两条语句。
计算平均值
Select avg(hanbai_tanka) from shohin;
Select avg(hanbai_tanka) ,avg(shiire_tanka) from shohin;
---它会将NULL变成0进行计算。
计算最大值和最小值
Select max(hanbai_tanka),min(shiire_tanka) from shohin;
使用聚合函数删除重复值distinct
Select cout(distinct shohin_bunrui) from shohin;----计算去除重复数据后的数据行数
对表进行分组
Group by 子句
Select shohin_bunrui,count(*) from shohin group by shohin_bunrui;
Select shiire_tanka,count(*) from shohin group by shiire_tanka;
Select shiire_tanks,count(*) from shohin_bunrui = ‘衣服’ group by shiire_tanka;
Select ->from->where->group by
Ps:group by 子句中使用的别名会引发错误;
Having 通过特定分组后,制定特定条件来选取特定组的方法。//对集合指定条件
Select shohin_bunrui,count(*) from shohin group by shohin_bunrui having cout(*) = 2;
Select shohin_bunrui,count(*) from shohin group by shohin_bunrui; ---对比上面的结果可以发现差异
Select shohin_bunrui,avg(hanbai_tanka) from shohin group by shohin_bunrui;
Select shohin_bunrui,avg(hanbai_tanka) from shohin group by shohin_bunrui having avg(hanbai_tanka) >= 2500;
Ps:行条件对应的条件是应该写在where子句中,组条件对应的条件应该写在having语句中;
执行速度来看where 和 having:
Where子句执行在count()排序之前,不会加重对系统的负荷。Having在排序之后,会加重的系统的负荷,所以where会比having快。
对查询结果进行排序:order by
Select shohin_id,shohin_mei,hanbai_tanka from shohin;
Select lname from lname order by +排序基准;
Select shohin_id,shohin_mei,hanbai_tanka from shohin
order by hanbai_tanka desc;--按照销售单价从高到低排序;
指定多键排序:select shohin_id,shohin_mei,hanbai_tanka from shohin order by hanbai_tanka,shohin_id;
----按照销售单价和商品编号进行升序排序
Select count(*) from shohin;
Select count(shiire_tanka) from shohin;
计算和值
Select sum(hanbai_tanka) from shohin;
Select sum(hanbai_tanka) ,sum(shiire_tanka) from shohin;
--返回两条语句。
计算平均值
Select avg(hanbai_tanka) from shohin;
Select avg(hanbai_tanka) ,avg(shiire_tanka) from shohin;
---它会将NULL变成0进行计算。
计算最大值和最小值
Select max(hanbai_tanka),min(shiire_tanka) from shohin;
使用聚合函数删除重复值distinct
Select cout(distinct shohin_bunrui) from shohin;----计算去除重复数据后的数据行数
对表进行分组
Group by 子句
Select shohin_bunrui,count(*) from shohin group by shohin_bunrui;
Select shiire_tanka,count(*) from shohin group by shiire_tanka;
Select shiire_tanks,count(*) from shohin_bunrui = ‘衣服’ group by shiire_tanka;
Select ->from->where->group by
Ps:group by 子句中使用的别名会引发错误;
Having 通过特定分组后,制定特定条件来选取特定组的方法。//对集合指定条件
Select shohin_bunrui,count(*) from shohin group by shohin_bunrui having cout(*) = 2;
Select shohin_bunrui,count(*) from shohin group by shohin_bunrui; ---对比上面的结果可以发现差异
Select shohin_bunrui,avg(hanbai_tanka) from shohin group by shohin_bunrui;
Select shohin_bunrui,avg(hanbai_tanka) from shohin group by shohin_bunrui having avg(hanbai_tanka) >= 2500;
Ps:行条件对应的条件是应该写在where子句中,组条件对应的条件应该写在having语句中;
执行速度来看where 和 having:
Where子句执行在count()排序之前,不会加重对系统的负荷。Having在排序之后,会加重的系统的负荷,所以where会比having快。
对查询结果进行排序:order by
Select shohin_id,shohin_mei,hanbai_tanka from shohin;
Select lname from lname order by +排序基准;
Select shohin_id,shohin_mei,hanbai_tanka from shohin
order by hanbai_tanka desc;--按照销售单价从高到低排序;
指定多键排序:select shohin_id,shohin_mei,hanbai_tanka from shohin order by hanbai_tanka,shohin_id;
----按照销售单价和商品编号进行升序排序
相关文章推荐
- Mysql之运算的使用
- MySQL审计之插件
- MySQL 5.6.14 win32 zip版安装
- Mysql之查询基础select
- Mysql之数据库与sql
- mysql 主从复制
- Mysql游标遍历
- MYSQL的慢查询两个方法
- Windows安装MySQL
- Mysql编码出现错乱问题
- mysql优化
- 报错:Could not load JDBC driver class [com.mysql.jdbc.Driver]
- mysql sql语句
- mysql rand函数种子的使用技巧
- MySql的FIND_IN_SET()查询函数的使用
- Mysql 关键字-保留字
- MySQL中information_schema是什么
- 【Mysql sqlyog工具的相关快捷键总结】
- MySQL ・ InnoDB 文件系统之IO系统和内存管理
- MySql_SQLyog+SQL Assistant实现智能提示