MySQL 练习题2
CREATE TABLE `dept` (
`did` int(11) NOT NULL AUTO_INCREMENT,
`dname` varchar(255) DEFAULT NULL,
`address` varchar(255) DEFAULT NULL,
PRIMARY KEY (`did`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8; -- ----------------------------
-- Records of dept
-- ----------------------------
INSERT INTO `dept` VALUES ('', '武当', '湖北');
INSERT INTO `dept` VALUES ('', '华山', '陕西');
INSERT INTO `dept` VALUES ('', '嵩山', '河南');
INSERT INTO `dept` VALUES ('', '日月神教', '黑木崖'); -- ----------------------------
-- Table structure for ren
-- ----------------------------
DROP TABLE IF EXISTS `ren`;
CREATE TABLE `ren` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(255) DEFAULT NULL,
`age` int(11) DEFAULT NULL,
`salary` int(10) DEFAULT NULL,
`leader` int(11) DEFAULT NULL,
`menpai` varchar(255) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=utf8; -- ----------------------------
-- Records of ren
-- ----------------------------
INSERT INTO `ren` VALUES ('', '张三丰', '', '', '', '武当');
INSERT INTO `ren` VALUES ('', '张无忌', '', '', '', '明教');
INSERT INTO `ren` VALUES ('', '岳不群', '', '', '', '华山');
INSERT INTO `ren` VALUES ('', '东方不败', '', '', '', '日月神教');
INSERT INTO `ren` VALUES ('', '令狐冲', '', '', '', '华山');
INSERT INTO `ren` VALUES ('', '林平之', '', '', '', '华山');
INSERT INTO `ren` VALUES ('', '金毛狮王', '', '', '', '明教');
INSERT INTO `ren` VALUES ('', '张翠山', '', '', '', '武当');
INSERT INTO `ren` VALUES ('', '张远桥', '', '', '', '武当');
INSERT INTO `ren` VALUES ('', 'Alex', '', '', '', 'python');
数据准备
1.表关系

注意:创建表时,根据合理性设置字段的长度和类型.
-- 1.查询所有人员信息
-- SELECT * FROM ren INNER JOIN dept on ren.menpai = dept.dname
-- 2.只查询人员的姓名和年龄
-- SELECT name,age FROM ren
-- 3.查询年龄为20岁的有哪些人员
-- SELECT * FROM ren WHERE age>20
-- 4.查询60岁以下的人员有哪些人员
-- SELECT * FROM ren WHERE age <60
-- 5.查询50岁以上并且工资大于8000的人员有哪些
-- SELECT * FROM ren WHERE age>50 and salary >8000
-- 6.查询姓[张]的人员有哪些
-- SELECT * FROM ren WHERE `name` LIKE '张%'
-- 7.查询哪些人员属于 武当/华山/嵩山
-- SELECT menpai,`name` FROM ren WHERE menpai IN('武当','华山','嵩山')
-- 8.查询工资在 5000-8900 的人员有哪些
-- SELECT name,salary FROM ren WHERE salary BETWEEN 5000 and 8900
-- 9.查询所有人员,要求按工资倒序排列
-- SELECT * FROM ren ORDER BY salary DESC
-- 10.查询令狐冲的领导人是谁
-- SELECT * FROM ren WHERE name = ’令狐冲‘ -- 11.查询人员表中最高工资是多少
-- SELECT NAME,salary FROM ren ORDER BY salary DESC LIMIT 1
-- 12.查询人员表中最低工资是多少
-- SELECT NAME, salary FROM ren ORDER BY salary Asc LIMIT 1
-- SELECT MIN(salary) FROM ren
-- 13.查询所有人员的平均工资是多少--
-- SELECT AVG(salary) FROM ren
-- 14.查询所有人员的工资总和是多少
-- SELECT SUM(salary) FROM ren
-- 15.查询目前有多少个人员
-- SELECT COUNT(id)FROM ren
-- 16.查询当前武林中有哪些门派
-- SELECT dname FROM dept
-- 17.查询 武当派 最高工资是谁--
-- SELECT `name`, MAX(salary) FROM ren INNER JOIN dept on ren.menpai=dept.dname where ren.menpai='武当'
-- 18.查询各门派的平均工资是多少
-- SELECT menpai,avg(salary) FROM ren GROUP BY ren.menpai
-- 19.查询当前武林中有哪些门派的平均工资大于8000 并按工资倒序排列
-- SELECT menpai,AVG(salary) FROM ren GROUP BY ren.menpai HAVING avg(salary)>8000 ORDER BY salary
-- 20.查询当前人员表的中的第3条数据到第7条数据
-- SELECT * FROM ren LIMIT 3,7
-- 22.查询武当派下有哪些弟子
-- SELECT menpai,`name` FROM ren WHERE menpai ='武当'
-- 23.查询各门派的工资总和按倒序/正序排列
-- SELECT menpai,SUM(salary) FROM ren GROUP BY menpai -- 25.将武当派 张三丰 修改为 张丰
-- update ren set name='张丰' where NAME='张三丰'
-- 29.在湖北省内的门派中的人员有哪些.
-- SELECT dname,`name` FROM dept INNER JOIN ren ON dept.dname= ren.menpai WHERE address='湖北' -- 30.在陕西省内门派中的工资小于5000,年龄大于20岁的人员有哪些,按主键倒序排列
-- SELECT `name` FROM dept INNER JOIN ren WHERE address='陕西' and salary<5000 AND age>20 ORDER BY ren.id DESC
-- -------------------------疑难部分-------------------------------
-- 21.查询哪些门派下没有弟子(错误)
-- SELECT menpai FROM dept RIGHT JOIN ren ON dept.dname=ren.menpai
-- 24.删除工资重复的人员,请保留年龄最大的一个人
-- 26.将所有门派大哥工资上调10%,但不包括Alex. -- 27.查看哪些人员的门派已登记地理位置.
-- SELECT dname FROM dept WHERE address = NULL -- 28.查询所有人员门派的位置信息,不存在位置信息则不显示
2.下面:开始你的表演
1.查询所有人员信息
2.只查询人员的姓名和年龄
3.查询年龄为20岁的有哪些人员
4.查询60岁以下的人员有哪些人员
5.查询50岁以上并且工资大于8000的人员有哪些
6.查询姓[张]的人员有哪些
7.查询哪些人员属于 武当/华山/嵩山
8.查询工资在 5000-8900 的人员有哪些
9.查询所有人员,要求按工资倒序排列
10.查询令狐冲的领导人是谁
11.查询人员表中最高工资是多少
12.查询人员表中最低工资是多少
13.查询所有人员的平均工资是多少
14.查询所有人员的工资总和是多少
15.查询目前有多少个人员
16.查询当前武林中有哪些门派
17.查询 武当派 最高工资是谁
18.查询各门派的平均工资是多少
19.查询当前武林中有哪些门派的平均工资大于8000 并按工资倒序排列
20.查询当前人员表的中的第3条数据到第7条数据
21.查询哪些门派下没有弟子
22.查询武当派下有哪些弟子
23.查询各门派的工资总和按倒序/正序排列
24.删除工资重复的人员,请保留年龄最大的一个人
25.将武当派 张三丰 修改为 张丰
26.将所有门派大哥工资上调10%,但不包括Alex.
27.查看哪些人员的门派已登记地理位置.
28.查询所有人员门派的位置信息,不存在位置信息则不显示
29.在湖北省内的门派中的人员有哪些.
30.在陕西省内门派中的工资小于5000,年龄大于20岁的人员有哪些,按主键倒序排列
MySQL 练习题2的更多相关文章
- MySQL练习题
MySQL练习题 一.表关系 请创建如下表,并创建相关约束 二.操作表 1.自行创建测试数据 2.查询“生物”课程比“物理”课程成绩高的所有学生的学号: 3.查询平均成绩大于60分的同学的学号和平均成 ...
- MySQL练习题参考答案
MySQL练习题参考答案 2.查询“生物”课程比“物理”课程成绩高的所有学生的学号: 思路: 获取所有有生物课程的人(学号,成绩) - 临时表 获取所有有物理课程的人(学号,成绩) - 临时表 根据[ ...
- s15day12作业:MySQL练习题参考答案
MySQL练习题参考答案 导出现有数据库数据: mysqldump -u用户名 -p密码 数据库名称 >导出文件路径 # 结构+数据 mysqldump -u用户名 -p ...
- Python/ MySQL练习题(一)
Python/ MySQL练习题(一) 查询“生物”课程比“物理”课程成绩高的所有学生的学号 SELECT * FROM ( SELECT * FROM course LEFT JOIN score ...
- python/MySQL练习题(二)
python/MySQL练习题(二) 查询各科成绩前三名的记录:(不考虑成绩并列情况) select score.sid,score.course_id,score.num,T.first_num,T ...
- python 全栈开发,Day65(MySQL练习题,参考答案)
一.MySQL练习题 一.表关系 请创建如下表,并创建相关约束 二.操作表 1.自行创建测试数据 2.查询“生物”课程比“物理”课程成绩高的所有学生的学号.ps:针对的是自己的生物成绩比物理成绩高,再 ...
- mysql 练习题答案
一 题目 1.查询所有的课程的名称以及对应的任课老师姓名 2.查询学生表中男女生各有多少人 3.查询物理成绩等于100的学生的姓名 4.查询平均成绩大于八十分的同学的姓名和平均成绩 5.查询所有学生的 ...
- mysql练习题练习
1.数据库是按照原文制作的,表格结构一样具体存储的数据有些差异 原文地址:MySQL练习题 原答案地址:MySQL练习题参考答案 2.查询“生物”课程比“物理”课程成绩高的所有学生的学号: selec ...
- MySQL练习题及答案(复习)
新建一个叫做 review 的数据库,将测试数据脚本导进去.(可以使用Navicat查询功能) /* Navicat MySQL Data Transfer Source Server : DB So ...
- mysql练习题-查询同时参加计算机和英语考试的学生的信息-遁地龙卷风
(-1)写在前面 文章参考http://blog.sina.com.cn/willcaty. 针对其中的一道练习题想出两种其他的答案,希望网友给出更多回答. (0) 基础数据 student表 +-- ...
随机推荐
- [转] ELK 之 Logstash
[From] https://blog.csdn.net/iguyue/article/details/77006201 ELK 之 Logstash 简介: ELK 之 LogstashLogsta ...
- 【Sublime】Sublime插件
alignmentcodecs33convertToUtf8sublimeAstyleFormattersublimeLintersublimeLInter-contrib-clangtagInput ...
- HUE配置文件hue.ini 的impala模块详解(图文详解)(分HA集群)
不多说,直接上干货! 我的集群机器情况是 bigdatamaster(192.168.80.10).bigdataslave1(192.168.80.11)和bigdataslave2(192.168 ...
- TortoiseGit学习系列之TortoiseGit基本操作修改提交项目(图文详解)
前面博客 TortoiseGit学习系列之TortoiseGit基本操作克隆项目(图文详解) TortoiseGit基本操作修改提交项目 项目克隆完成后(可以将克隆 clone 理解为 下载,检出 c ...
- DiagnosticFormatter
关于这个类的继承体系如下: 1.DiagnosticFormatter类在com.sun.tools.javac.api包中,其定义如下: /** * Provides simple function ...
- Could not find a version that satisfies.... No matching distribution found for .....
原文作者:aircraft 原文链接:https://www.cnblogs.com/DOMLX/p/10227403.html 今天在安装mysql-python的时候报了很多的错误,其中一条就是这 ...
- Http的Get和Post--扫盲篇
Http Get请求,根据Http规范Get用于服务器信息的获取,而且安全及幂等的.其中安全的在此处的含义是:不会对服务器数据造成修改.增加.以及数据状态的改变. Http Post请求,表示可能修改 ...
- 透析ARP原理
对于ARP协议, 我本来是不了解的,只是解决了两个ARP相关的P2的Bug后,也就懂了.本文将从原理的角度对ARP做一个透析. 1. 什么是ARP? ARP(Address Resolution Pr ...
- 虚拟机安装Ubuntu的上网设置(有线网络和无线网络)
(恩,是转的) 虚拟机下ubuntu共享方式上网: 一. 有线网络 在有线网络的条件下,vmware的安装非常简单,上网方式几乎不用怎么设置(默认NAT模式) 如果默认情况下不能上网,则按以下 ...
- 对.net事件的看法
对.net事件的看法 一.事件的本质 事件是软件系统里的两个子系统之间,或者两个模块之间,或者两个对象之间发送消息,并处理消息的过程.在面向对象的世界里,就可以统一认为是两个对象之间的行为. 两个对象 ...