当前位置: 首页 > news >正文

云南做网站找谁网站开发硬件配置

云南做网站找谁,网站开发硬件配置,手机端网站用dw怎么做,百度投放平台(五)分组查询1. 介绍2. 语法3. 简单分组函数2. 添加筛选条件3. 添加复杂的筛选条件4. 分组查询特点5. 按表达式或函数分组6. 按多个字段分组7. 分组查询添加排序1. 介绍 引入:查询每个部门的平均工资 -- 以前写法:求的是总平均工…

1. 介绍

引入:查询每个部门的平均工资

-- 以前写法:求的是总平均工资。
SELECT AVG(salary) FROM employees;
-- 正确写法
SELECT AVG(salary), department_id
FROM employees
GROUP BY department_id;

2. 语法

SELECT 分组函数,--列要求出现在 group by 的后面
FROM[WHERE 筛选条件]
[GROUP BY 分组的列表]
[ORDER BY|分组函数];

注意:
查询列表必须特殊,要求是分组函数和 group by 后出现的字段。

一般出现 “每个”、“各个”、“每一个”、“所有” 等词语,都是要进行分组查询,并且这些词的后紧接的就是 ORDER BY 后的内容。

3. 简单分组函数

案例一:查询每个工种的最高工资

SELECT MAX(salary), job_id
FROM employees
GROUP BY job_id;

案例二:查询每个位置上的部门个数

SELECT COUNT(*),location_id
FROM departments
GROUP BY location_id;

2. 添加筛选条件

案例1:普询邮箱中包含a字符的,每个部门的平均工资

SELECT AVG(salary), department_id
FROM employees
WHERE email like '%a%'
GROUP BY department_id;

案例2:查询有奖金的每个领导手下员工的最高工资

SELECT MAX(salary), manager_id
FROM employees
WHERE commission_pct IS NOT NULL
GROUP BY manager_id;

3. 添加复杂的筛选条件

添加分组后的筛选:HAVING

案例1: 查询哪个部门的员工个数>2

SELECT COUNT(*), department_id
FROM employees
GROUP BY department_id
HAVING COUNT(*)>2;

案例2:查询每个工种有奖金的员工的最高工资>12000的工种编号和最高工资

-- 1. 查询每个工种有奖金的员工的最高工资
SELECT MAX(salary),job_id
FROM employees
WHERE commission_pct IS NOT NULL
GROUP BY job_id;
-- 2. 根据1结果继续筛选,最高工资>12000
SELECT MAX(salary),job_id
FROM employees
WHERE commission_pct IS NOT NULL
GROUP BY job_id
HAVING MAX(salary)>12000;

案例3:查询领导编号>102的每个领导手下的最低工资>5000的领导编号

 SELECT MIN(salary), manager_idFROM employeesWHERE manager_id>102GROUP BY manager_idHAVING MIN(salary)>5000;

4. 分组查询特点

分组查询中的筛选条件分为两类:

分类数据源关键字位置
分组前筛选原始表WHEREGROUP BY 子句的前面
分组后筛选分组后的结果集HAVINGGROUP BY 子句的后面
  1. 分组函数做条件肯定是放在 having 子句中
  2. 能用分组前筛选的优先使用分组前筛选(性能好)
  3. GROUP BY 子句支持单个字段分组,多个字段分组(多个字段之间用逗号隔开,没有顺序要求)
  4. 排序查询放在最后

5. 按表达式或函数分组

案例: 按员工姓名的长度分组,查询每一组的员工个数,筛选员工个数>5

-- a. 查询每个长度的员工个数
SELECT COUNT(*), LENGTH(last_name) AS len_name
FROM employees
GROUP BY LENGTH(last_name)
-- b. 添加筛选条件
SELECT COUNT(*) c, LENGTH(last_name) AS len_name
FROM employees
GROUP BY len_name
HAVING c>5;

6. 按多个字段分组

案例: 查询每个部门每个工种的员工的平均工资

SELECT AVG(salary), department_id, job_id
FROM employees
GROUP BY department_id, job_id;

7. 分组查询添加排序

案例: 查询每个部门每个工种的员工的平均工资,并且按平均工资的高低排列
排序查询放在最后

SELECT AVG(salary) a, department_id, job_id
FROM employees
WHERE department_id IS NOT NULL
GROUP BY department_id, job_id
HAVING a>10000
ORDER BY a DESC;
http://www.yayakq.cn/news/826936/

相关文章:

  • 网站设计作业多少钱个人网站当企业网站用
  • 环保类网站模板免费下载济南网站开发推广
  • 营销网站建站企业网站建设方案功能
  • 网站开发页面设计稿定设计网页版登录
  • 网站建设怎么选择MySQL数据库大小建筑作品集网站代做
  • 如何上传网站到云服务器php怎样做网站管理后台
  • 网站建设人员需求如何做淘客推广网站
  • 浦项建设(中国)有限公司网站建湖人才网最新招聘信息
  • 制作婚纱摄影网站管理图手机网站如何推广
  • 绿叶网站怎么做网站建设公司 青岛
  • 天天seo站长工具软件开发案例展示
  • 织梦网站织梦做英文版的资源分享wordpress模板主题
  • 塑胶制品 东莞网站建设网页首页制作模板
  • 网站主页与导航栏的设计微信公众号调用WordPress
  • 传统网站和手机网站的区别优秀网站设计欣赏国内
  • 建站系统平台广东广州网站建设
  • 中国林业工程建设网站漳州商城网站建设
  • 汉源网站建设个人电脑做外网网站
  • 写给初学网站开发们的一封信修改wordpress代码
  • 深圳做网站哪家网站备案需要什么条件
  • 三站合一的网站怎么做教程瓷砖网站模板
  • 网站使用前流程wordpress的主题mnews1.9
  • 网站后台栏目根据什么做的深圳市建工建设集团有限公司
  • 微信小程序可以做网站用网站备案名称
  • 杭州网站建设hzfwwlwordpress如何建立论坛
  • 域名访问过程会不会影响网站访问保定网站seo
  • 地方类门户网站网站建设 空间什么系统
  • 学做预算网站东莞市建设安监局网站首页
  • 深圳建设官方网站全国信息企业查询平台
  • 网站建设一定要备案吗锦州电脑网站建设