2020-10-05

    科技2022-08-18  99

     

    #显示所有职工的基本信息。  SELECT * FROM worker;

    101    1001    2015-05-04    3500    群众    张三    1990-07-01 101    1002    2017-02-06    3200    团员    李四    1997-02-08 102    1003    2011-01-04    8500    党员    王亮    1983-06-03 102    1004    2016-10-10    5500    群众    赵六    1994-09-05 102    1005    2014-04-01    4800    党员    钱七    1992-12-30 102    1006    2017-05-05    4500    党员    孙八    1996-09-02

    #查询所有职工所属部门的部门号,不显示重复的部门号。  SELECT DISTINCT (部门号) FROM worker;

    #求出所有职工的人数。  SELECT COUNT(*) FROM worker;

    #列出最高工和最低工资。  SELECT MAX(工资),MIN(工资) FROM worker;

    #列出职工的平均工资和总工资。  select AVG( 工资),SUM(工资) FROM worker;

    #创建一个只有职工号、姓名和参加工作的新表,名为工作日期表。 CREATE TABLE `工作日期表` ( `职工号` INT,`姓名` VARCHAR (10),`参加工作`DATE);

    #显示所有女职工的年龄

    #列出所有姓孙的职工的职工号、姓名和出生日期。 SELECT 职工号,姓名,出生日期 FROM worker WHERE `姓名` LIKE '%孙%';

    #列出1996年以后出生的职工的姓名、参加工作日期。 SELECT 姓名,工作时间 FROM worker WHERE `出生日期` >1996;

    #列出工资在1000-4000之间的所有职工姓名。  select 姓名 from worker where 工资 between 1000 and 4000

    #列出所有钱姓和李姓的职工姓名。 SELECT 姓名 FROM worker WHERE `姓名` LIKE '钱%' or `姓名` LIKE '李%'

    #列出所有部门号为2和3的职工号、姓名、党员否。

     SELECT 职工号, 姓名, 政治面貌  FROM worker WHERE 部门号 IN (101, 103);

    #将职工表worker中的职工按出生的先后顺序排序。

    select * from worker order by 出生日期 ASC;

    #显示工资最高的前3名职工的职工号和姓名。  SELECT 职工号,姓名 FROM worker 工资 WHERE `工资` ORDER BY  `工资` DESC LIMIT 3;

         

     #求出各部门党员的人数

    SELECT COUNT(*) AS '党员的人数' FROM worker WHERE 政治面貌 = '党员';

     

    #统计各部门的工资和平均工资

    SELECT SUM(工资) AS '101总工资' FROM worker WHERE 部门号 = '101';

    SELECT AVG(工资) AS '101平均工资' FROM worker WHERE 部门号 = '101';

     

     

    #列出总人数大于3的部门号和总人数。

    SELECT 部门号,COUNT(*) 总人数 FROM worker GROUP BY 部门号 HAVING COUNT(部门号) > 3;

     

     

    Processed: 0.023, SQL: 9