建表:
#部门表
create table dept(
deptno int primary key,
dname varchar(14), -- 部门名称
loc varchar(13)-- 部门地址
)default charset=utf8 ;
insert into dept values (10,'会计部','纽约');
insert into dept values (20,'技术部','达拉斯');
insert into dept values (30,'销售部','芝加哥');
insert into dept values (40,'运营部','波士顿');
select * from dept
#员工表
drop table emp;
create table emp(
empno int primary key, -- 员工编号
ename varchar(10), -- 员工姓名
job varchar(9), -- 员工工作
mgr int, -- 员工直属领导编号
hiredate date, -- 入职时间
sal double, -- 工资
comm double, -- 奖金
deptno int, -- 所在部门
foreign key (deptno) references dept(deptno)) default charset=utf8; -- 关联dept表
-- alter table emp add foreign key (deptno) references dept(deptno);
insert into emp values(7369,'smith','职员',7566,"1980-12-17",800,null,20);
insert into emp values(7499,'allen','销售员',7698,'1981-02-20',1600,300,30);
insert into emp values(7521,'ward','销售员',7698,'1981-02-22',1250,500,30);
insert into emp values(7566,'jones','经理',7839,'1981-04-02',2975,null,20);
insert into emp values(7654,'martin','销售员',7698,'1981-09-28',1250,1400,30);
insert into emp values(7698,'blake','经理',7839,'1981-05-01',2850,null,30);
insert into emp values(7782,'clark','经理',7839,'1981-06-09',2450,null,10);
insert into emp values(7788,'scott','职员',7566,'1987-07-03',3000,2000,20);
insert into emp values(7839,'king','董事长',null,'1981-11-17',5000,null,10);
insert into emp values(7844,'turners','销售员',7698,'1981-09-08',1500,50,30);
insert into emp values(7876,'adams','职员',7566,'1987-07-13',1100,null,20);
insert into emp values(7900,'james','职员',7698,'1981-12-03',1250,null,30);
insert into emp values(7902,'ford','销售员',7566,'1981-12-03',3000,null,20);
insert into emp values(7934,'miller','职员',7782,'1981-01-23',1300,null,10);
#工资等级表
create table salgrade(
grade int,-- 等级
losal double, -- 最低工资
hisal double ) default charset=utf8; -- 最高工资
insert into salgrade values (1,500,1000);
insert into salgrade values (2,1001,1500);
insert into salgrade values (3,1501,2000);
insert into salgrade values (4,2001,3000);
insert into salgrade values (5,3001,9999);
单表题目:
#1、查找部门30中员工的详细信息。
#2、找出从事职员工作的员工的编号、姓名、部门号。(clerk 职员,办事员)
#3、检索出奖金多于基本工资的员工信息。
#4、检索出奖金多于基本工资60%的员工信息。
#5、找出10部门的经理、20部门的职员 的员工信息。(manager经理;管理
#6、找出10部门的经理、20部门的职员 或者既不是经理也不是职员但是工资高于2000元的员工信息。(sal 工资)
#7、找出获得奖金的员工的工作。(comm奖金)
#8、找出奖金少于100或者没有获得奖金的员工的信息。
#9、找出姓名以a、b、s开始的员工信息.
#10、找到名字长度为6个字符的员工信息。
#11、名字中不包含r字符的员工信息。
select * from emp where ename not like '%r%';
#12、查找员工的详细信息并按姓名排序。
#13、返回员工的信息并按工作降序工资升序排列。(升序的规则)
#14、计算员工的日薪(按30天)。
#15、找出姓名中包含a的员工信息。
2:多表查询答案
#1、返回拥有员工的部门名、部门号。
#2、工资水平多于smith的员工信息。
#3、返回员工和所属经理的姓名。
#4、返回雇员的雇佣日期早于其经理雇佣日期的员工及其经理姓名。
#5、返回员工姓名及其所在的部门名称。
#6、返回从事clerk工作的员工姓名和所在部门名称。(CLERK销售)
#7、返回部门号及其本部门的最低工资。
#8、返回销售部(sales)所有员工的姓名。
#9、返回工资水平多于平均工资的员工。
#10、返回与SCOTT从事相同工作的员工。(职员)
#11、返回与30部门员工工资水平相同的员工姓名与工资。
#12、返回工资高于30部门所有员工工资水平的员工信息。
#13、返回部门号、部门名、部门所在位置及其每个部门的工员总数。
#14、返回员工的姓名、所在部门名及其工资。
#15、返回员工的详细信息。(包括部门名)
#16、返回员工工作及其从事此工作的最低工资。
#17、计算出员工的年薪,并且以年薪排序。
#18、返回工资处于第四级别的员工的姓名。
#19、返回工资为二等级的职员名字、部门所在地、和二等级的最低工资和最高工资
#20.工资等级多于smith的员工信息。
题目:
#1、查找部门30中员工的详细信息。
SELECT * FROM EMP WHERE DEPTNO="30"
#2、找出从事职员工作的员工的编号、姓名、部门号。(clerk 职员,办事员)
SELECT EMPNO,ENAME,DEPTNO FROM EMP WHERE JOB="职员"
#3、检索出奖金多于基本工资的员工信息。
SELECT * from EMP where COMM>SAL;
#4、检索出奖金多于基本工资60%的员工信息。
SELECT * from EMP WHERE COMM>SAL*0.6
#5、找出10部门的经理、20部门的职员 的员工信息。(manager经理;管理
select * from EMP where DEPTNO=10 and JOB='经理' union select * from EMP where DEPTNO=20 and JOB='职员';
select * from EMP where (DEPTNO=10 and JOB='经理') or (DEPTNO=20 and JOB='职员');
#6、找出10部门的经理、20部门的职员 或者既不是经理也不是职员但是工资高于2000元的员工信息。(sal 工资)
select * from emp where (job='经理' and deptno=10) or (job='职员' and deptno=20) or (job!='经理' and job!='职员' and sal>2000);
select * from EMP where (DEPTNO=10 and JOB='经理') or (DEPTNO=20 and JOB='职员') or (JOB not in('经理','职员') and SAL>2000);
SELECT * FROM EMP WHERE (JOB="经理" and DEPTNO=10)OR(JOB="职员" and DEPTNO=20)OR (JOB<>"职员" AND JOB<>"经理" AND SAL>2000)
#7、找出获得奖金的员工的工作。(comm奖金)
SELECT ENAME,COMM FROM EMP WHERE COMM IS NOT NULL
select distinct(JOB) from EMP where COMM is not null;
select job from emp where comm>0l;
SELECT ENAME ,JOB FROM EMP WHERE COMM>0
#8、找出奖金少于100或者没有获得奖金的员工的信息。
SELECT * FROM EMP WHERE COMM IS NULL OR COMM<100
select * from EMP where COMM BETWEEN 0 and 100 ;
#9、找出姓名以A、B、S开始的员工信息.
select * from ygb where ENAME like 'A%' or ENAME like 'B%' or ENAME like 'S%'
select * from EMP where ENAME regexp '^[ABS]';
#10、找到名字长度为6个字符的员工信息。
select * from emp where length(ename)=6;
select * from emp where ename like '______';
#11、名字中不包含R字符的员工信息。
select * from emp where ename not like '%R%';
#12、查找员工的详细信息并按姓名排序。
SELECT * FROM EMP ORDER BY ENAME ASC
#13、返回员工的信息并按工作降序工资升序排列。(升序的规则)
SELECT * FROM EMP ORDER BY JOB DESC,SAL ASC
#14、计算员工的日薪(按30天)。
SELECT ENAME,SAL/30 FROM EMP;
#15、找出姓名中包含A的员工信息
SELECT * FROM EMP WHERE ENAME LIKE"%A%"
一个学生表
分别记录姓名,年龄,性别,班级,语文,数学,英语字段
create table student2(
id int primary key ,
name char(20),
sex char(10),
age int(3),
mobile char(20),
class char(10),
english int(10),
chinese int(10),
math int(10)
)engine=innodb default charset=utf8;
insert into student2 values
(1,'小红','女',23,'13813828824','1719',77,88,98),
(2,'小明','男',23,'13713713711','1720',56,66,55),
(3,'小李','男',23,'15915913911','1719',78,64,87),
(4,'小张','男',23,'15915913912','1720',77,76,77),
(5,'小白','女',24,'15915913913','1719',90,89,98),
(6,'小陈','女',19,'15915913914','1719',84,100,81),
(7,'小钱','女',20,'15915913915',null,45,99,93);
题目
题目1
查询1719班学生的成绩信息(指english,chinese,math)
题目2
查询1719班学生语文成绩大于80小于90的学生信息
题目3
查询学生表中5-7行的数据信息
题目4
显示1719班英语成绩为90,数学成绩为98的name与mobile信息
题目5
显示1719班学生信息并且以语文成绩降序排序(所有的信息)
题目6
查询1719与1720班,语文成绩与数学成绩都小于80的name与mobile信息
题目7
查询英语平均分大于80分的班级,英语平均分
题目8
按班级查出数学最高分
题目9
查询出每班数学最低分
题目10
查询每班数学总分
题目11
查询每班数学平均分
题目12
查询出每班学生总数
题目13
在表中插入一条小谢的成绩数据
题目14
把英语分数小于60的同学分数改为60分?
题目15
删除数学不及格的数据?
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架