MySQL(2)

MySQL(2)_第1张图片

 建表

mysql> create table work(
    -> ‘部门号’ int(11) not null,
    -> ‘职工号’ int(11) not null,
    -> ‘工作时间’ date not null,
    -> ‘工资’ float(8,2) not null,
    -> ‘政治面貌’ varchar(10) not null default '群众',
    -> ‘姓名’ varchar(20) not null,
    -> ‘出生日期’ date not null,
    -> primary key(‘职工号’)
    -> );

MySQL(2)_第2张图片

 

插入信息

mysql> insert into work values(101, 1001, '2015-5-4', 3500, '群众', '张三', '1990-7-1');


mysql> insert into work values(101, 1002, '2017-2-6', 3200, '团员', '李四', '1997-2-8');


mysql> insert into work values(101, 1003, '2011-1-4', 8500, '党员', '王亮', '1983-6-8');


mysql> insert into work values(102, 1004, '2016-10-10', 5500, '群众', '赵六', '1994-9-5');


mysql> insert into work values(102, 1005, '2014-4-1', 4800, '党员', '钱七', '1992-12-30');


mysql> insert into work values(102, 1006, '2017-5-5', 4500, '党员', '孙八', '1996-9-2');

MySQL(2)_第3张图片

 

1、显示所有职工的基本信息

mysql> select *from work;

MySQL(2)_第4张图片

2、查询所有职工所属部门的部门号,不显示重复的部门号

mysql> select distinct ‘部门号’ from work;

MySQL(2)_第5张图片

3、求出所有职工的人数

mysql> select count(*) from work;

 MySQL(2)_第6张图片

4、列出最高工资和最低工资

mysql> select max(‘工资’), min(‘工资’) from work;

MySQL(2)_第7张图片 

5、列出职工的平均工资和总工资

mysql> select avg(‘工资’)as '平均工资', sum(‘工资’)as '工资总和' from work;

MySQL(2)_第8张图片

6、创建一个只有职工号,姓名,参加工作的新表,名为工作日期表

mysql> create table work_date select ‘职工号’, ‘姓名’, ‘工作时间’ from work;

 

MySQL(2)_第9张图片

8、列出所有姓张的职工的职工号,姓名,参加工作日期

mysql> select ‘职工号’, ‘姓名’, ‘出生日期’ from work where ‘姓名’ like '张%'; 

MySQL(2)_第10张图片

9、列出1994年以前出生的职工的姓名,参加工作日期

mysql> select ‘姓名’, ‘工作时间’ from work where ‘出生日期’ < '1994-1-1';

MySQL(2)_第11张图片 10、列出工资在3000-4000之间的所有职员的姓名

mysql> select ‘工资’, ‘姓名’ from work where ‘工资’ between 3000 and 4000;

MySQL(2)_第12张图片

11、列出所有王姓和李姓的职工姓名

mysql> select ‘姓名’ from work where ‘姓名’ like '李%' or ‘姓名’ like '王%';

MySQL(2)_第13张图片

12、列出所有部门号为2和1的职工号,姓名,党员否

mysql> select ‘职工号’, ‘姓名’, ‘政治面貌’ from work where ‘部门号’ in (101, 102) and ‘政治面貌’='党员';

MySQL(2)_第14张图片

13、将职工表work中的职工按出生的先后顺序排序

mysql> select *from work order by ‘出生日期’;

 MySQL(2)_第15张图片

 

14、显示工资最高的前3名职工的职工号和姓名

mysql> select ‘职工号’, ‘姓名’, ‘工资’ from work order by ‘工资’ desc limit 3;

MySQL(2)_第16张图片 

15、求出各部门党员的人数

mysql> select ‘部门号’, count(*) from work where ‘政治面貌’='党员' group by ‘部门号’ having count(*)>1;

MySQL(2)_第17张图片 

16、统计各部门的工资和平均工资

mysql> select ‘部门号’, sum(‘工资’), avg(‘工资’) from work group by ‘部门号’ ;

MySQL(2)_第18张图片

 

17、列出总人数大于4的部门号和总人数

 

mysql> select ‘部门号’, count(*) from work group by ‘部门号’ having count(8)>2;

MySQL(2)_第19张图片

 

你可能感兴趣的:(mysql,android,数据库)