zoukankan      html  css  js  c++  java
  • day47---分组多表查询练习

    分组多表查询练习

    数据准备

    create table emp(
      id int not null unique auto_increment,
      name varchar(20) not null,
      sex enum('male','female') not null default 'male', #大部分是男的
      age int(3) unsigned not null default 28,
      hire_date date not null,
      post varchar(50),
      post_comment varchar(100),
      salary double(15,2),
      office int, #一个部门一个屋子
      depart_id int
    );
    
    #插入记录
    #三个部门:教学,销售,运营
    insert into emp(name,sex,age,hire_date,post,salary,office,depart_id) values
    ('jason','male',18,'20170301','张江第一帅形象代言',7300.33,401,1), #以下是教学部
    ('tom','male',78,'20150302','teacher',1000000.31,401,1),
    ('kevin','male',81,'20130305','teacher',8300,401,1),
    ('tony','male',73,'20140701','teacher',3500,401,1),
    ('owen','male',28,'20121101','teacher',2100,401,1),
    ('jack','female',18,'20110211','teacher',9000,401,1),
    ('jenny','male',18,'19000301','teacher',30000,401,1),
    ('sank','male',48,'20101111','teacher',10000,401,1),
    ('哈哈','female',48,'20150311','sale',3000.13,402,2),#以下是销售部门
    ('呵呵','female',38,'20101101','sale',2000.35,402,2),
    ('西西','female',18,'20110312','sale',1000.37,402,2),
    ('乐乐','female',18,'20160513','sale',3000.29,402,2),
    ('拉拉','female',28,'20170127','sale',4000.33,402,2),
    ('僧龙','male',28,'20160311','operation',10000.13,403,3), #以下是运营部门
    ('程咬金','male',18,'19970312','operation',20000,403,3),
    ('程咬银','female',18,'20130311','operation',19000,403,3),
    ('程咬铜','male',18,'20150411','operation',18000,403,3),
    ('程咬铁','female',18,'20140512','operation',17000,403,3);
    
    

    练习

    #1. 查询岗位名以及岗位包含的所有员工名字
    select post as "岗位名",group_concat(name) as "员工" from emp group by post;
    #2. 查询岗位名以及各岗位内包含的员工个数
    select post as "岗位名",count(id) as "员工个数" from emp group by post;
    #3. 查询公司内男员工和女员工的个数
    select sex as "性别",count(id) as "员工个数" from emp group by sex;
    #4. 查询岗位名以及各岗位的平均薪资
    select post as "岗位名",avg(salary) as "平均工资" from emp group by post;
    #5. 查询岗位名以及各岗位的最高薪资
    select post as "岗位名",max(salary) as "最高工资" from emp group by post;
    #6. 查询岗位名以及各岗位的最低薪资
    select post as "岗位名",min(salary) as "最低工资" from emp group by post;
    #7. 查询男员工与男员工的平均薪资,女员工与女员工的平均薪资
    select sex as "员工性别",avg(salary) as "平均工资" from emp group by sex;
    
  • 相关阅读:
    LeetCode Path Sum II
    LeetCode Longest Palindromic Substring
    LeetCode Populating Next Right Pointers in Each Node II
    LeetCode Best Time to Buy and Sell Stock III
    LeetCode Binary Tree Maximum Path Sum
    LeetCode Find Peak Element
    LeetCode Maximum Product Subarray
    LeetCode Intersection of Two Linked Lists
    一天一个设计模式(1)——工厂模式
    PHP迭代器 Iterator
  • 原文地址:https://www.cnblogs.com/surpass123/p/12837263.html
Copyright © 2011-2022 走看看