mysql入门(分组查询八)
2017-05-15 01:15
405 查看
1:单行处理
1:sum求和
mysql> select sum(sal) from emp;
+----------+
| sum(sal) |
+----------+
| 29025.00 |
+----------+
1 row in set (0.00 sec)
2:avg:求平均值
mysql> select avg(sal) from emp;
+-------------+
| avg(sal) |
+-------------+
| 2073.214286 |
+-------------+
1 row in set (0.00 sec)
3:求最大值
mysql> select max(sal) from emp;
+----------+
| max(sal) |
+----------+
| 5000.00 |
+----------+
1 row in set (0.17 sec)
4:求最小值
mysql> select min(sal) from emp;
5;统计查询(过滤掉空的记录)
select count(ename) from emp;
+--------------+
| count(ename) |
+--------------+
| 14 |
+--------------+
1 row in set (0.00 sec)
mysql> select count(comm) from emp;
+-------------+
| count(comm) |
+-------------+
| 3 |
+-------------+
1 row in set (0.00 sec)
6:在查询结果中去重(distinct)
select job from emp;
+-----------+
| job |
+-----------+
| CLERK |
| SALESMAN |
| SALESMAN |
| MANAGER |
| SALESMAN |
| MANAGER |
| MANAGERAN |
| ANALIST |
| PRESIDENT |
| SALESMAN |
| CLECK |
| CLECK |
| ANALYST |
| CLERY |
+-----------+
14 rows in set (0.00 sec)
mysql> select distinct job from emp;
+-----------+
| job |
+-----------+
| CLERK |
| SALESMAN |
| MANAGER |
| MANAGERAN |
| ANALIST |
| PRESIDENT |
| CLECK |
| ANALYST |
| CLERY |
+-----------+
9 rows in set (0.00 sec)
7:分组查询(group by,having) 案例:查询每个岗位的最高薪水)[先按照每个岗位分组,使用max求每组的最大值)
select job,avg(sal) from emp group by job having avg(sal)>1500;
+-----------+-------------+
| job | avg(sal) |
+-----------+-------------+
| ANALIST | 3000.000000 |
| ANALYST | 3000.000000 |
| MANAGER | 2912.500000 |
| MANAGERAN | 2450.000000 |
| PRESIDENT | 5000.000000 |
+-----------+-------------+
1:sum求和
mysql> select sum(sal) from emp;
+----------+
| sum(sal) |
+----------+
| 29025.00 |
+----------+
1 row in set (0.00 sec)
2:avg:求平均值
mysql> select avg(sal) from emp;
+-------------+
| avg(sal) |
+-------------+
| 2073.214286 |
+-------------+
1 row in set (0.00 sec)
3:求最大值
mysql> select max(sal) from emp;
+----------+
| max(sal) |
+----------+
| 5000.00 |
+----------+
1 row in set (0.17 sec)
4:求最小值
mysql> select min(sal) from emp;
5;统计查询(过滤掉空的记录)
select count(ename) from emp;
+--------------+
| count(ename) |
+--------------+
| 14 |
+--------------+
1 row in set (0.00 sec)
mysql> select count(comm) from emp;
+-------------+
| count(comm) |
+-------------+
| 3 |
+-------------+
1 row in set (0.00 sec)
6:在查询结果中去重(distinct)
select job from emp;
+-----------+
| job |
+-----------+
| CLERK |
| SALESMAN |
| SALESMAN |
| MANAGER |
| SALESMAN |
| MANAGER |
| MANAGERAN |
| ANALIST |
| PRESIDENT |
| SALESMAN |
| CLECK |
| CLECK |
| ANALYST |
| CLERY |
+-----------+
14 rows in set (0.00 sec)
mysql> select distinct job from emp;
+-----------+
| job |
+-----------+
| CLERK |
| SALESMAN |
| MANAGER |
| MANAGERAN |
| ANALIST |
| PRESIDENT |
| CLECK |
| ANALYST |
| CLERY |
+-----------+
9 rows in set (0.00 sec)
7:分组查询(group by,having) 案例:查询每个岗位的最高薪水)[先按照每个岗位分组,使用max求每组的最大值)
select job,avg(sal) from emp group by job having avg(sal)>1500;
+-----------+-------------+
| job | avg(sal) |
+-----------+-------------+
| ANALIST | 3000.000000 |
| ANALYST | 3000.000000 |
| MANAGER | 2912.500000 |
| MANAGERAN | 2450.000000 |
| PRESIDENT | 5000.000000 |
+-----------+-------------+
相关文章推荐
- MySQL入门(3)- 分组函数(count、sum、avg、max、min)&分组查询(groupby、orderby)
- MySQL中group by分组查询介绍
- php入门学习知识点一 PHP与MYSql连接与查询
- mysql 分组查询
- mysql分组查询 排序
- mysql 分组查询数据时,如何获得用于分页的总记录数?
- J2EE入门视频教程第五讲——MySQL中的数据类型及命令行基本查询语句
- [入门]MySQL学习笔记三数据查询筛选显示
- mysql分组查询最大的数据
- mysql 分组查询数据时,如何获得用于分页的总记录数?
- MySQL查询生成排序号,和扯蛋的分组无关
- 最近总结的mysql分组排序查询语句
- 记录一个mysql按日期分组统计的查询
- MySql 分组查询
- Mysql 分组查询统计一个属性出现各个值的次数
- php入门学习知识点一 PHP与MYSql连接与查询
- mysql入门学习之一:查询
- MySql入门笔记四~无恶不作的查询
- java操作mysql入门代码实例(含插入、更新和查询)
- MySQL入门-10:子查询与联结表