当前位置:网站首页>mysql数据库操作语句练习
mysql数据库操作语句练习
2022-04-21 12:36:00 【JeffchenITM】
目录
创建表
学生表:stu

#创建学生表
CREATE TABLE stu(
sid CHAR(6),
sname VARCHAR(50),
age INT,
gender VARCHAR(50)
);
#向学生表中插入下面数据
INSERT INTO stu VALUES('S_1001','liuYi',35,'male');
INSERT INTO stu VALUES('S_1002','chenEr',15,'female');
INSERT INTO stu VALUES('S_1003','ZhangSan',95,'male');
INSERT INTO stu VALUES('S_1004','liSi',35,'female');
INSERT INTO stu VALUES('S_1005','wangWu',55,'male');
INSERT INTO stu VALUES('S_1006','zhangLiu',75,'female');
INSERT INTO stu VALUES('S_1007','sunQi',25,'male');
INSERT INTO stu VALUES('S_1008','zhouBa',45,'female');
INSERT INTO stu VALUES('S_1009','wuJiu',85,'male');
INSERT INTO stu VALUES('S_1010','zhengShi',5,'female');
INSERT INTO stu VALUES('S_1011','xxx',NULL,NULL);
雇员表:

#创建雇员表
CREATE TABLE emp(
empno INT,
ename VARCHAR(50),
job VARCHAR(50),
mgr INT,
hiredate DATE,
sal DECIMAL(7,2),
comm DECIMAL(7,2),
deptno INT
);
#向雇员表插入数据
INSERT INTO emp VALUES(7369,'SMITH','ClERK',7902,'1980-12-17',800,NULL,20)
INSERT INTO emp VALUES(7499,'ALLEN','SALESMAN',7698,'1981-02-20',1600,300,30);
INSERT INTO emp VALUES(7521,'WARD','SALESMAN',7698,'1981-02-22',1250,500,30);
INSERT INTO emp VALUES(7566,'JONES','MANAGER',7839,'1981-04-02',2975,NULL,20);
INSERT INTO emp VALUES(7654,'MARTIN','SALESMAN',7698,'1981-09-28',1250,1400,30);
INSERT INTO emp VALUES(7698,'BLAKE','MANAGER',7839,'1981-05-01',2850,NULL,30);
INSERT INTO emp VALUES(7782,'CLARK','MANAGER',7839,'1981-06-09',2450,NULL,10);
INSERT INTO emp VALUES(7788,'SCOTT','ANALYST',7566,'1987-04-19',3000,NULL,20);
INSERT INTO emp VALUES(7839,'KING','PRESIDENT',NULL,'1981-11-17',5000,NULL,10);
INSERT INTO emp VALUES(7844,'TURNER','SALESMAN',7698,'1981-09-08',1500,0,30);
INSERT INTO emp VALUES(7876,'ADAMS','CLERK',7788,'1987-05-23',1100,NULL,20);
INSERT INTO emp VALUES(7900,'JAMES','CLERK',7698,'1981-12-03',950,NULL,30);
INSERT INTO emp VALUES(7902,'FORD','ANALYST',7566,'1981-12-03',3000,NULL,20);
INSERT INTO emp VALUES(7934,'MILLER','CLERK',7782,'1982-01-23',1300,NULL,10);
部门表

CREATE TABLE dept(
ddeptno INT,
dname VARCHAR(14),
loc VARCHAR(13)
)
#向部门表中插入数据
INSERT INTO dept VALUES(10, 'ACCOUNTING', 'NEW YORK');
INSERT INTO dept VALUES(20, 'RESEARCH', 'DALLAS');
INSERT INTO dept VALUES(30, 'SALES', 'CHICAGO');
INSERT INTO dept VALUES(40, 'OPERATIONS', 'BOSTON');
根据上面表格进行的查询操作
##练习题目
#对学生表操作
#1、查询性别为女,并且年龄50的记录
SELECT * FROM stu WHERE gender='female' AND age<50;
#2、查询学号为S_1001,或者姓名为liSi的记录
SELECT * FROM stu WHERE sid='S_1001' OR sname='liSi';
#3、查询学号为S_1001,S_1002,S_1003的记录
SELECT * FROM stu WHERE sid IN('S_1001','S_1002','S_1003');
#4、查询学号不是S_1001,S_1002,S_1003的记录
SELECT * FROM stu WHERE sid NOT IN ('S_1001','S_1002','S_1003');
#5、查询年龄为null的记录
SELECT * FROM stu WHERE age IS NULL;
#6、查询年龄在20到40之间的学生记录
SELECT *FROM stu WHERE age>=20 AND age<=40;#或者
SELECT * FROM stu WHERE age BETWEEN 20 AND 40;
#7、查询性别非男的学生记录
SELECT * FROM stu WHERE gender!='male';#或者
SELECT * FROM stu WHERE gender <>'male';#或者
SELECT * FROM stu WHERE NOT gender='male';
#8、查询姓名不为null的学生记录
SELECT * FROM stu WHERE sname IS NOT NULL;#或者
SELECT * FROM stu WHERE NOT sname IS NULL;
#9、查询姓名由5个字母构成的学生记录
SELECT * FROM stu WHERE sname LIKE '_____'; #一个字母用一个下划线代表
#10、查询姓名由5个字母构成,并且第5个字母为“i”的学生记录
SELECT * FROM stu WHERE sname LIKE '____i';
#11、查询姓名以“z”开头的学生记录
SELECT * FROM stu WHERE sname LIKE 'z%'; #其中%匹配0-n个任意字母
#12、查询姓名中第2个字母为“i”的学生记录
SELECT * FROM stu WHERE sname LIKE '_i%';
#13、查询姓名中包含“a”字母的学生记录
SELECT * FROM stu WHERE sname LIKE '%a%';
#14、查询所有学生记录,按年龄升序排序
SELECT * FROM stu ORDER BY age ASC;
SELECT * FROM stu ORDER BY age; #默认升序排序
#15、查询所有学生记录,按年龄降序排序
SELECT *FROM stu ORDER BY age DESC;
##雇员表格操作
#16、查询所有雇员,按月薪降序排序,如果月薪相同时,按编号升序排序
SELECT * FROM emp ORDER BY sal DESC,empno ASC;
#17、查询emp表中月薪大于2500的人数:
SELECT COUNT(*) FROM emp WHERE sal>2500;
#18、统计月薪与佣金之和大于2500元的人数:
SELECT COUNT(*) AS cnt FROM emp WHERE sal+IFNULL(comm,0)>2500;
#19、查询有佣金的人数,以及有领导的人数:
SELECT COUNT(comm),COUNT(mgr) FROM emp;
#20、查询所有雇员月薪和,以及所有雇员佣金和:
SELECT SUM(sal),SUM(comm) FROM emp;
#21、查询所有雇员月薪+佣金和:
SELECT SUM(sal+IFNULL(comm,0)) FROM emp;
#22、统计所有员工平均工资:
SELECT SUM(sal)/COUNT(sal) FROM emp;#或者
SELECT AVG(sal)FROM emp;
#23、查询每个部门的部门编号和每个部门的工资和:
SELECT deptno ,SUM(sal) FROM emp GROUP BY deptno;
#24、查询每个部门的部门编号以及每个部门的人数:
SELECT deptno ,COUNT(*) FROM emp GROUP BY deptno;
#25、查询每个部门的部门编号以及每个部门工资大于1500的人数:
SELECT deptno,COUNT(*) FROM emp WHERE sal>1500 GROUP BY deptno;
#26、查询工资总和大于9000的部门编号以及工资和:
SELECT deptno,SUM(sal) FROM emp GROUP BY deptno HAVING SUM(sal)>9000;
#27、查询5行记录,起始行从0开始
SELECT * FROM emp LIMIT 0,5;
#28、查询10行记录,起始行从3开始
SELECT * FROM emp LIMIT 3,10;
版权声明
本文为[JeffchenITM]所创,转载请带上原文链接,感谢
https://blog.csdn.net/weixin_43498449/article/details/124303813
边栏推荐
- [software test series IX] description of matters to be provided for pressure test application
- win11的WiFi按钮不见了无法联网
- Cultdao, a decentralized VC platform, launched a vote on the betamars project, which is currently in progress
- SKU中的销售属性值必须成对填写,那这是什么原因
- Study notes of deep learning (6)
- Office Word 2016 中Word自带公式编辑器编辑的公式转Mathtype出现omml2mml.xsl 问题的解决方法
- 基于C#实现文本读取的7种方式
- 实例:用C#.NET手把手教你做微信公众号开发(7)--普通消息处理之位置消息
- LLVM之父ChrisLattner:编译器的黄金时代
- A tag or < router link > use target = "_blank" to open a new page, and the sessionstorage of the new page is lost
猜你喜欢

机器学习-Sklearn-12(回归类大家族-上——多元线性回归、岭回归、Lasso)(解决多重共线性)

SKU中的销售属性值必须成对填写,那这是什么原因
AES自动生成base64密钥加密解密

阿里天池比赛——街景字符编码识别

BEVSegFormer:一个来自任意摄像头的BEV语义分割方法

Chris LATTNER, father of llvm: the golden age of compilers

數據庫,把另一張錶某字段數據添加到另一個錶中,同時加入的時候加入自己需要的數據

伯克利、三星|一个快速的训练后变换器修剪框架

“如何实现集中管理、灵活高效的CI/CD”在线研讨会精彩内容分享

I think you can tear the linked list by hand (1)
随机推荐
Software engineering final exam questions and answers
字段行相同则合并在另外一个字段sql 语句?
Intermediary encircles little red book
China Resources Yibao is rumored to have an IPO, and nongnongshanquan may usher in an early "old enemy"
[BSidesCF 2019]Kookie
ASM插桩之美
Anchor free new network: centernet and cornernet form centernet + +
基于C#实现文本读取的7种方式
win11的WiFi按钮不见了无法联网
Top stream "fitness blogger" Liu Zhenhong
[software test series vi] software system test scheme
Musk lives in the old Internet age?
逆波兰表达式
WordPress plugin IQ block country 1.2.13 delete any file through zip slip
AcWing 1854. Equation Derivation for solving promotion counting problem
分享几款我在高频使用的 Chrome 浏览器插件,每一个都好用到飞起
There is no market for virtual currency. Why can there be no small temptation for some people?
Importer dans le tampon du Protocole
Title record of TIANTI competition (II)
Donetsk armed forces: 127 residents evacuated to a safe place from the area near the Asian speed steel plant