日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

SQL题集(二)

發布時間:2023/12/20 数据库 44 豆豆
生活随笔 收集整理的這篇文章主要介紹了 SQL题集(二) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1.比賽名單整理

數據導入

DROP TABLE IF EXISTS competition_list; CREATE TABLE competition_list( team_name VARCHAR(8) ) ENGINE = InnoDB DEFAULT CHARSET = utf8; INSERT INTO competition_list (team_name) VALUE ('誰與爭鋒隊') ,('必勝隊') ,('乘風破浪隊') ,('群英匯隊') ,('夢之隊');

competition_list表

team_name : 參賽隊名

問題:每個參賽隊伍都會和其他參賽隊伍開展一次組隊比賽,要求輸出兩兩參賽隊伍的所有比賽情況組合(兩者分別為隊伍A和隊伍B),并按照隊名依次升序排列

解題思路

使用表的自連接,通過在隊名之間以"<"的方式連接來確保隊伍不會和自身匹配,并依次按照隊名進行升序排序即可(涉及的知識點:多表連接)

SELECT a.team_name AS 隊伍A, b.team_name AS 隊伍B FROM competition_list AS a INNER JOIN competition_list AS b ON a.team_name < b.team_name ORDER BY a.team_name, b.team_name;

結果展示

2.參與優惠活動的商品

數據導入

DROP TABLE IF EXISTS product_promotion; CREATE TABLE product_promotion( commodity_id VARCHAR(8), start_date DATE, end_date DATE ) ENGINE = InnoDB DEFAULT CHARSET = utf8; INSERT INTO product_promotion (commodity_id,start_date,end_date) VALUE ('a001','2021-01-01','2021-01-06') ,('a002','2021-01-01','2021-01-10') ,('a003','2021-01-02','2021-01-07') ,('a004','2021-01-05','2021-01-07') ,('b001','2021-01-05','2021-01-10') ,('b002','2021-01-04','2021-01-06') ,('c001','2021-01-06','2021-01-08') ,('c002','2021-01-02','2021-01-04') ,('c003','2021-01-08','2021-01-15');

product_promotion表

commodity_id : 商品ID? ?start_date : 商品優惠活動起始日期? ?end_date : 商品優惠活動結束日期

問題:查詢在2021年1月7日至2021年1月9日期間參與優惠活動的商品

解題思路

假設2021年1月7日為時間a,2021年1月9日為時間b,每個優惠活動的開始時間為s,結束時間為e,則所有的可能序列為"sabe"、"saeb"、"asbe"、"aseb"

SELECT commodity_id FROM product_promotion WHERE (start_date<='2021-01-09' AND start_date>='2021-01-07') OR (end_date>='2021-01-07' AND end_date<='2021-01-09') OR (end_date>='2021-01-09' AND start_date<='2021-01-07') OR (start_date>='2021-01-07' AND end_date<='2021-01-09');

結果展示

3.連續售出的商品

數據導入

DROP TABLE IF EXISTS sold_succession; CREATE TABLE sold_succession( order_id INT, commodity_id VARCHAR(8) ) ENGINE = InnoDB DEFAULT CHARSET = utf8; INSERT INTO sold_succession (order_id,commodity_id) VALUE (1,'c_001') ,(2,'c_001') ,(3,'c_002') ,(4,'c_002') ,(5,'c_002') ,(6,'c_001') ,(7,'c_003') ,(8,'c_003') ,(9,'c_003') ,(10,'c_003') ,(11,'c_001');

sold_succession表

order_id : 訂單ID? ?commodity_id : 購買的商品ID

問題:找出連續下單大于或等于3次的商品ID

解題思路

使用窗口函數LAG(order_id,2),根據商品ID進行分組,并按照訂單順序默認升序延后兩行展開

SELECT commodity_id,order_id,LAG(order_id,2) OVER (PARTITION BY commodity_id ORDER BY order_id) AS temp FROM sold_succession;

?輸出結果

在上述輸出結果中進行子查詢操作,如果連續3次出現相同的commodity_id字段值,則應該在相同commodity_id字段值的第3行出現order_id = temp + 2的情況。如上圖所示,commodity_id字段值為c_002, order_id = 5 和 temp = 3的那條記錄符合這一條件。在子查詢外部加入WHERE order_id = temp + 2進行判斷并將結果去重即可。

涉及知識點: 子查詢、窗口函數、DISTINCT

SELECT DISTINCT commodity_id FROM (SELECT commodity_id,order_id,LAG(order_id,2) OVER (PARTITION BY commodity_id ORDER BY order_id) AS temp FROM sold_succession )AS a WHERE order_id = temp + 2;

結果展示

4.修復串列的記錄

數據導入

drop table if exists examination_info; CREATE TABLE examination_info (id int PRIMARY KEY AUTO_INCREMENT COMMENT '自增ID',exam_id int UNIQUE NOT NULL COMMENT '試卷ID',tag varchar(32) COMMENT '類別標簽',difficulty varchar(8) COMMENT '難度',duration int NOT NULL COMMENT '時長',release_time datetime COMMENT '發布時間' )CHARACTER SET utf8 COLLATE utf8_general_ci;INSERT INTO examination_info(exam_id,tag,difficulty,duration,release_time) VALUES(9001, '算法', 'hard', 60, '2020-01-01 10:00:00'),(9002, '算法', 'hard', 80, '2020-01-01 10:00:00'),(9003, 'SQL', 'medium', 70, '2020-01-01 10:00:00'),(9004, '算法,medium,80','', 0, '2020-01-01 10:00:00');

examination_info表(試卷信息表)

exam_id: 試卷ID? tag: 試卷類別? difficulty: 試卷難度? duration: 考試時長? release_time: 發布時間?

問題:?錄題同學有一次手誤將部分記錄的試題類別tag、難度difficulty、時長duration同時錄入到了tag字段,請幫忙找出這些錄錯了的記錄,并拆分后按正確的列類型輸出?

-- 解法1 SELECT exam_id,SUBSTRING_INDEX(tag,',',1)AS tag,SUBSTRING_INDEX(SUBSTRING_INDEX(tag,',',2),',',-1)AS difficulty,SUBSTRING_INDEX(tag,',',-1)AS duration FROM examination_info WHERE difficulty='';-- 解法2 SELECT exam_id,SUBSTRING_INDEX(tag,',',1)AS tag,SUBSTRING_INDEX(SUBSTRING_INDEX(tag,',',2),',',-1)AS difficulty,SUBSTRING_INDEX(tag,',',-1)AS duration FROM examination_info WHERE tag LIKE'%,%';-- 解法3 SELECT exam_id,SUBSTRING_INDEX(tag,',',1)AS tag,SUBSTRING_INDEX(SUBSTRING_INDEX(tag,',',2),',',-1)AS difficulty,SUBSTRING_INDEX(tag,',',-1)AS duration FROM examination_info WHERE tag REGEXP ',+';

結果展示:

5.對過長的昵稱進行截取處理

數據導入?

drop table if exists user_info; CREATE TABLE user_info (id int PRIMARY KEY AUTO_INCREMENT COMMENT '自增ID',uid int UNIQUE NOT NULL COMMENT '用戶ID',`nick_name` varchar(64) COMMENT '昵稱',achievement int COMMENT '成就值',level int COMMENT '用戶等級',job varchar(32) COMMENT '職業方向',register_time datetime COMMENT '注冊時間' )CHARACTER SET utf8 COLLATE utf8_general_ci;INSERT INTO user_info(uid,`nick_name`,achievement,`level`,job,register_time) VALUES(1001, '牛客1', 19, 0, '算法', '2020-01-01 10:00:00'),(1002, '牛客2號', 1200, 3, '算法', '2020-01-01 10:00:00'),(1003, '牛客3號♂', 22, 0, '算法', '2020-01-01 10:00:00'),(1004, '牛客4號', 25, 0, '算法', '2020-01-01 11:00:00'),(1005, '牛客5678901234號', 4000, 7, '算法', '2020-01-01 10:00:00'),(1006, '牛客67890123456789號', 25, 0, '算法', '2020-01-02 11:00:00');

user_info表(用戶信息表)

uid: 用戶ID? ?nick_name: 昵稱? ?achievement: 成就值? ?level: 等級? ?job: 職業方向

register_time: 注冊時間?

問題:有的用戶的昵稱特別長,在一些展示場景會導致樣式混亂,因此需要將特別長的昵稱轉換一下再輸出,請輸出字符數大于10的用戶信息,對于字符數大于13的用戶輸出前10個字符然后加上三個點號: "..."

-- 解法1 SELECT uid, IF(CHAR_LENGTH(nick_name) > 13,CONCAT(LEFT(nick_name,10),'...'),nick_name)AS nick_name FROM user_info WHERE CHAR_LENGTH(nick_name) > 10;-- 解法2 SELECT uid,(CASE WHEN CHAR_LENGTH(nick_name) <= 13 THEN nick_nameELSE CONCAT(SUBSTRING(nick_name,1,10),'...')END)AS nick_name FROM user_info WHERE CHAR_LENGTH(nick_name) > 10;

結果展示:

解釋: 字符數大于10的用戶有1005和1006,長度分別為13、17;因此需要對1006的昵稱截斷輸出?

6.注冊時間最早的三個人

數據導入

drop table if exists user_info; CREATE TABLE user_info (id int PRIMARY KEY AUTO_INCREMENT COMMENT '自增ID',uid int UNIQUE NOT NULL COMMENT '用戶ID',`nick_name` varchar(64) COMMENT '昵稱',achievement int COMMENT '成就值',level int COMMENT '用戶等級',job varchar(32) COMMENT '職業方向',register_time datetime COMMENT '注冊時間' )CHARACTER SET utf8 COLLATE utf8_general_ci;INSERT INTO user_info(uid,`nick_name`,achievement,level,job,register_time) VALUES(1001, '牛客1', 19, 0, '算法', '2020-01-01 10:00:00'),(1002, '牛客2號', 1200, 3, '算法', '2020-02-01 10:00:00'),(1003, '牛客3號♂', 22, 0, '算法', '2020-01-02 10:00:00'),(1004, '牛客4號', 25, 0, '算法', '2020-01-02 11:00:00'),(1005, '牛客555號', 4000, 7, 'C++', '2020-01-11 10:00:00'),(1006, '666666', 3000, 6, 'C++', '2020-11-01 10:00:00');

user_info表(用戶信息表)?

uid: 用戶ID? ?nick_name: 昵稱? ?achievement: 成就值? ?level: 等級? ?job: 職業方向

register_time: 注冊時間?

問題:請從中找到注冊時間最早的3個人,按注冊時間排序后選取前三名,輸出其用戶ID、昵稱、注冊時間

-- 解法1 SELECT uid, nick_name, register_time FROM user_info ORDER BY register_time ASC LIMIT 3;-- 解法2 SELECT uid, nick_name, register_time FROM (SELECT uid, nick_name, register_time,row_number() over (ORDER BY register_time)AS time_rankFROM user_info)AS a WHERE a.time_rank <= 3;

結果展示:

7.查找最晚入職員工的所有信息?

數據導入

drop table if exists `employees` ; CREATE TABLE `employees` ( `emp_no` int(11) NOT NULL, `birth_date` date NOT NULL, `first_name` varchar(14) NOT NULL, `last_name` varchar(16) NOT NULL, `gender` char(1) NOT NULL, `hire_date` date NOT NULL, PRIMARY KEY (`emp_no`)); INSERT INTO employees VALUES(10001,'1953-09-02','Georgi','Facello','M','1986-06-26'); INSERT INTO employees VALUES(10002,'1964-06-02','Bezalel','Simmel','F','1985-11-21'); INSERT INTO employees VALUES(10003,'1959-12-03','Parto','Bamford','M','1986-08-28'); INSERT INTO employees VALUES(10004,'1954-05-01','Chirstian','Koblick','M','1986-12-01'); INSERT INTO employees VALUES(10005,'1955-01-21','Kyoichi','Maliniak','M','1989-09-12'); INSERT INTO employees VALUES(10006,'1953-04-20','Anneke','Preusig','F','1989-06-02'); INSERT INTO employees VALUES(10007,'1957-05-23','Tzvetan','Zielinski','F','1989-02-10'); INSERT INTO employees VALUES(10008,'1958-02-19','Saniya','Kalloufi','M','1994-09-15'); INSERT INTO employees VALUES(10009,'1952-04-19','Sumant','Peac','F','1985-02-18'); INSERT INTO employees VALUES(10010,'1963-06-01','Duangkaew','Piveteau','F','1989-08-24'); INSERT INTO employees VALUES(10011,'1953-11-07','Mary','Sluis','F','1990-01-22');

employees表

問題:查找employees里最晚入職員工的所有信息?

SELECT * FROM employees WHERE hire_date = (SELECT MAX(hire_date) FROM employees);

結果展示:

8.查找入職員工時間排名倒數第三的員工所有信息

數據導入

drop table if exists `employees` ; CREATE TABLE `employees` ( `emp_no` int(11) NOT NULL, `birth_date` date NOT NULL, `first_name` varchar(14) NOT NULL, `last_name` varchar(16) NOT NULL, `gender` char(1) NOT NULL, `hire_date` date NOT NULL, PRIMARY KEY (`emp_no`)); INSERT INTO employees VALUES(10001,'1953-09-02','Georgi','Facello','M','1986-06-26'); INSERT INTO employees VALUES(10002,'1964-06-02','Bezalel','Simmel','F','1985-11-21'); INSERT INTO employees VALUES(10003,'1959-12-03','Parto','Bamford','M','1986-08-28'); INSERT INTO employees VALUES(10004,'1954-05-01','Chirstian','Koblick','M','1986-12-01'); INSERT INTO employees VALUES(10005,'1955-01-21','Kyoichi','Maliniak','M','1989-09-12'); INSERT INTO employees VALUES(10006,'1953-04-20','Anneke','Preusig','F','1989-06-02'); INSERT INTO employees VALUES(10007,'1957-05-23','Tzvetan','Zielinski','F','1989-02-10'); INSERT INTO employees VALUES(10008,'1958-02-19','Saniya','Kalloufi','M','1994-09-15'); INSERT INTO employees VALUES(10009,'1952-04-19','Sumant','Peac','F','1985-02-18'); INSERT INTO employees VALUES(10010,'1963-06-01','Duangkaew','Piveteau','F','1989-08-24'); INSERT INTO employees VALUES(10011,'1953-11-07','Mary','Sluis','F','1990-01-22');

employees表?

問題:查找employees里入職員工時間排名倒數第三的員工所有信息(注意:可能會存在同一個日期入職的員工,所以入職員工時間排名倒數第三的員工可能不止一個)

-- 解法1 SELECT emp_no, birth_date, first_name, last_name, gender, hire_date FROM (SELECT *, DENSE_RANK() OVER (ORDER BY hire_date DESC)AS dense_rankingFROM employees)AS a WHERE a.dense_ranking = 3;-- 解法2 SELECT emp_no, birth_date, first_name, last_name, gender, hire_date FROM employees WHERE hire_date=(SELECT DISTINCT hire_date FROM employeesORDER BY hire_date DESCLIMIT 2,1);

結果展示:

9.查找當前薪水詳情以及部門編號dept_no

數據導入

drop table if exists `salaries` ; drop table if exists `dept_manager` ; CREATE TABLE `salaries` ( `emp_no` int(11) NOT NULL, `salary` int(11) NOT NULL, `from_date` date NOT NULL, `to_date` date NOT NULL, PRIMARY KEY (`emp_no`,`from_date`)); CREATE TABLE `dept_manager` ( `dept_no` char(4) NOT NULL, `emp_no` int(11) NOT NULL, `to_date` date NOT NULL, PRIMARY KEY (`emp_no`,`dept_no`)); INSERT INTO dept_manager VALUES('d001',10002,'9999-01-01'); INSERT INTO dept_manager VALUES('d002',10006,'9999-01-01'); INSERT INTO dept_manager VALUES('d003',10005,'9999-01-01'); INSERT INTO dept_manager VALUES('d004',10004,'9999-01-01'); INSERT INTO salaries VALUES(10001,88958,'2002-06-22','9999-01-01'); INSERT INTO salaries VALUES(10002,72527,'2001-08-02','9999-01-01'); INSERT INTO salaries VALUES(10003,43311,'2001-12-01','9999-01-01'); INSERT INTO salaries VALUES(10004,74057,'2001-11-27','9999-01-01'); INSERT INTO salaries VALUES(10005,94692,'2001-09-09','9999-01-01'); INSERT INTO salaries VALUES(10006,43311,'2001-08-02','9999-01-01'); INSERT INTO salaries VALUES(10007,88070,'2002-02-07','9999-01-01');

salaries表(全部員工薪水表)

dept_manager表(各部門領導表)

問題:查找各個部門當前領導的薪水詳情以及其對應部門編號dept_no,輸出結果以salaries.emp_no升序排序(輸出結果順序:emp_no, salary, from_date, to_date, dept_no)

-- 解法1 SELECT a.emp_no, a.salary, a.from_date, a.to_date, b.dept_no FROM salaries AS a INNER JOIN dept_manager AS b ON a.emp_no = b.emp_no ORDER BY a.emp_no ASC;-- 解法2 SELECT a.emp_no,a.salary,a.from_date,a.to_date,b.dept_no FROM salaries AS a RIGHT JOIN dept_manager AS b ON a.emp_no = b.emp_no ORDER BY a.emp_no;-- 解法3 SELECT b.emp_no,b.salary,b.from_date,b.to_date,a.dept_no FROM dept_manager AS a LEFT JOIN salaries AS b ON a.emp_no = b.emp_no ORDER BY b.emp_no;

結果展示:?

10.查找所有員工的last_name和first_name以及對應部門編號dept_no

數據導入

drop table if exists `dept_emp` ; drop table if exists `employees` ; CREATE TABLE `dept_emp` ( `emp_no` int(11) NOT NULL, `dept_no` char(4) NOT NULL, `from_date` date NOT NULL, `to_date` date NOT NULL, PRIMARY KEY (`emp_no`,`dept_no`)); CREATE TABLE `employees` ( `emp_no` int(11) NOT NULL, `birth_date` date NOT NULL, `first_name` varchar(14) NOT NULL, `last_name` varchar(16) NOT NULL, `gender` char(1) NOT NULL, `hire_date` date NOT NULL, PRIMARY KEY (`emp_no`)); INSERT INTO dept_emp VALUES(10001,'d001','1986-06-26','9999-01-01'); INSERT INTO dept_emp VALUES(10002,'d002','1996-08-03','9999-01-01'); INSERT INTO employees VALUES(10001,'1953-09-02','Georgi','Facello','M','1986-06-26'); INSERT INTO employees VALUES(10002,'1964-06-02','Bezalel','Simmel','F','1985-11-21'); INSERT INTO employees VALUES(10003,'1959-12-03','Parto','Bamford','M','1986-08-28'); INSERT INTO employees VALUES(10004,'1954-05-01','Chirstian','Koblick','M','1986-12-01');

employees表(員工表)

dept_emp表(部門表)

問題:查找所有已經分配部門的員工的last_name和first_name以及dept_no,也包括暫時沒有分配具體部門的員工

SELECT a.last_name, a.first_name, b.dept_no FROM employees AS a LEFT JOIN dept_emp AS b ON a.emp_no = b.emp_no;

結果展示:

注意
INNER JOIN 兩邊表同時有對應的數據,即任何一邊缺失數據就不顯示
LEFT JOIN 會讀取左邊數據表的全部數據,即便右邊表無對應數據
RIGHT JOIN 會讀取右邊數據表的全部數據,即便左邊表無對應數據

11.獲取所有非manager的員工emp_no

數據導入

drop table if exists `dept_manager` ; drop table if exists `employees` ; CREATE TABLE `dept_manager` ( `dept_no` char(4) NOT NULL, `emp_no` int(11) NOT NULL, `from_date` date NOT NULL, `to_date` date NOT NULL, PRIMARY KEY (`emp_no`,`dept_no`)); CREATE TABLE `employees` ( `emp_no` int(11) NOT NULL, `birth_date` date NOT NULL, `first_name` varchar(14) NOT NULL, `last_name` varchar(16) NOT NULL, `gender` char(1) NOT NULL, `hire_date` date NOT NULL, PRIMARY KEY (`emp_no`)); INSERT INTO dept_manager VALUES('d001',10002,'1996-08-03','9999-01-01'); INSERT INTO dept_manager VALUES('d002',10003,'1990-08-05','9999-01-01'); INSERT INTO employees VALUES(10001,'1953-09-02','Georgi','Facello','M','1986-06-26'); INSERT INTO employees VALUES(10002,'1964-06-02','Bezalel','Simmel','F','1985-11-21'); INSERT INTO employees VALUES(10003,'1959-12-03','Parto','Bamford','M','1986-08-28');

employees表(員工表)?

dept_manager表(部門領導表)

問題:找出所有非部門領導的員工emp_no?

-- 解法1 SELECT emp_no FROM employees WHERE emp_no NOT IN(SELECT emp_no FROM dept_manager);-- 解法2 SELECT emp_no FROM employees WHERE emp_no NOT IN (SELECT a.emp_noFROM employees AS aINNER JOIN dept_manager AS bON a.emp_no = b.emp_no);-- 解法3 SELECT a.emp_no FROM employees AS a LEFT JOIN dept_manager AS b ON a.emp_no = b.emp_no WHERE b.dept_no IS NULL;

結果展示:

12.獲取所有員工當前的manager?

導入數據

drop table if exists `dept_emp` ; drop table if exists `dept_manager` ; CREATE TABLE `dept_emp` ( `emp_no` int(11) NOT NULL, `dept_no` char(4) NOT NULL, `from_date` date NOT NULL, `to_date` date NOT NULL, PRIMARY KEY (`emp_no`,`dept_no`)); CREATE TABLE `dept_manager` ( `dept_no` char(4) NOT NULL, `emp_no` int(11) NOT NULL, `from_date` date NOT NULL, `to_date` date NOT NULL, PRIMARY KEY (`emp_no`,`dept_no`)); INSERT INTO dept_emp VALUES(10001,'d001','1986-06-26','9999-01-01'); INSERT INTO dept_emp VALUES(10002,'d001','1996-08-03','9999-01-01'); INSERT INTO dept_emp VALUES(10003,'d002','1995-12-03','9999-01-01'); INSERT INTO dept_manager VALUES('d001',10002,'1996-08-03','9999-01-01'); INSERT INTO dept_manager VALUES('d002',10003,'1990-08-05','9999-01-01');

dept_emp表(員工表)

dept_manager表(部門經理表)

-- 解法1 SELECT a.emp_no, b.emp_no AS manager FROM dept_emp AS a CROSS JOIN dept_manager AS b ON a.dept_no = b.dept_no WHERE a.emp_no != b.emp_no;-- 解法2 SELECT a.emp_no, b.emp_no AS manager FROM dept_emp AS a LEFT JOIN dept_manager AS b ON a.dept_no = b.dept_no WHERE a.emp_no <> b.emp_no;-- 解法3 SELECT a.emp_no, b.emp_no AS manager FROM dept_emp AS a INNER JOIN dept_manager AS b ON a.dept_no = b.dept_no WHERE a.emp_no != b.emp_no;

結果展示:

13.查找employees表emp_no與last_name的員工信息

數據導入

drop table if exists `employees` ; CREATE TABLE `employees` ( `emp_no` int(11) NOT NULL, `birth_date` date NOT NULL, `first_name` varchar(14) NOT NULL, `last_name` varchar(16) NOT NULL, `gender` char(1) NOT NULL, `hire_date` date NOT NULL, PRIMARY KEY (`emp_no`)); INSERT INTO employees VALUES(10001,'1953-09-02','Georgi','Facello','M','1986-06-26'); INSERT INTO employees VALUES(10002,'1964-06-02','Bezalel','Simmel','F','1985-11-21'); INSERT INTO employees VALUES(10003,'1959-12-03','Bezalel','Mary','M','1986-08-28'); INSERT INTO employees VALUES(10004,'1954-05-01','Chirstian','Koblick','M','1986-12-01'); INSERT INTO employees VALUES(10005,'1953-11-07','Mary','Sluis','F','1990-01-22');

employees表(員工表)?

問題:查找employees表所有emp_no為奇數,且last_name不為Mary的員工信息,并按照hire_date逆序排列?

SELECT emp_no, birth_date, first_name, last_name, gender, hire_date FROM employees WHERE emp_no % 2 != 0 AND last_name != 'Mary' ORDER BY hire_date DESC;

結果展示:

14.統計出當前各個title類型對應的員工當前薪水對應的平均工資?

數據導入

drop table if exists `salaries` ; drop table if exists titles; CREATE TABLE `salaries` ( `emp_no` int(11) NOT NULL, `salary` int(11) NOT NULL, `from_date` date NOT NULL, `to_date` date NOT NULL, PRIMARY KEY (`emp_no`,`from_date`)); CREATE TABLE titles ( `emp_no` int(11) NOT NULL, `title` varchar(50) NOT NULL, `from_date` date NOT NULL, `to_date` date DEFAULT NULL); INSERT INTO salaries VALUES(10001,88958,'1986-06-26','9999-01-01'); INSERT INTO salaries VALUES(10003,43311,'2001-12-01','9999-01-01'); INSERT INTO salaries VALUES(10004,74057,'1995-12-01','9999-01-01'); INSERT INTO salaries VALUES(10006,43311,'2001-08-02','9999-01-01'); INSERT INTO salaries VALUES(10007,88070,'2002-02-07','9999-01-01');INSERT INTO titles VALUES(10001,'Senior Engineer','1986-06-26','9999-01-01'); INSERT INTO titles VALUES(10003,'Senior Engineer','2001-12-01','9999-01-01'); INSERT INTO titles VALUES(10004,'Senior Engineer','1995-12-01','9999-01-01'); INSERT INTO titles VALUES(10006,'Senior Engineer','2001-08-02','9999-01-01'); INSERT INTO titles VALUES(10007,'Senior Staff','1996-02-11','9999-01-01');

titles表

salaries表

問題:統計出各個title類型對應的員工薪水對應的平均工資avg,結果給出title以及平均工資avg,并且以avg升序排序?

SELECT a.title, AVG(b.salary) FROM titles AS a INNER JOIN salaries AS b ON a.emp_no = b.emp_no GROUP BY a.title ORDER BY AVG(b.salary) ASC;

結果展示:

15.獲取當前薪水第二多的員工的emp_no以及其對應的薪水salary (一)

數據導入

drop table if exists `salaries` ; CREATE TABLE `salaries` ( `emp_no` int(11) NOT NULL, `salary` int(11) NOT NULL, `from_date` date NOT NULL, `to_date` date NOT NULL, PRIMARY KEY (`emp_no`,`from_date`)); INSERT INTO salaries VALUES(10001,88958,'2002-06-22','9999-01-01'); INSERT INTO salaries VALUES(10002,72527,'2001-08-02','9999-01-01'); INSERT INTO salaries VALUES(10003,43311,'2001-12-01','9999-01-01');

salaries表?

問題:獲取薪水第二多的員工的emp_no以及其對應的薪水salary,若有多個員工的薪水為第二多的薪水,則將對應的員工的emp_no和salary全部輸出,并按emp_no升序排序?

-- 解法1 SELECT a.emp_no, a.salary FROM(SELECT emp_no, salary,DENSE_RANK() OVER(ORDER BY salary DESC)AS dense_rankingFROM salaries)AS a WHERE a.dense_ranking = 2 ORDER BY a.emp_no ASC;-- 解法2 SELECT emp_no, salary FROM salaries WHERE salary = (SELECT DISTINCT salary FROM salaries ORDER BY salary DESC LIMIT 1,1) ORDER BY emp_no ASC;

結果展示:

16.獲取當前薪水第二多的員工的emp_no以及其對應的薪水salary(二)?

數據導入

drop table if exists `employees` ; drop table if exists `salaries` ; CREATE TABLE `employees` ( `emp_no` int(11) NOT NULL, `birth_date` date NOT NULL, `first_name` varchar(14) NOT NULL, `last_name` varchar(16) NOT NULL, `gender` char(1) NOT NULL, `hire_date` date NOT NULL, PRIMARY KEY (`emp_no`)); CREATE TABLE `salaries` ( `emp_no` int(11) NOT NULL, `salary` int(11) NOT NULL, `from_date` date NOT NULL, `to_date` date NOT NULL, PRIMARY KEY (`emp_no`,`from_date`)); INSERT INTO employees VALUES(10001,'1953-09-02','Georgi','Facello','M','1986-06-26'); INSERT INTO employees VALUES(10002,'1964-06-02','Bezalel','Simmel','F','1985-11-21'); INSERT INTO employees VALUES(10003,'1959-12-03','Parto','Bamford','M','1986-08-28'); INSERT INTO employees VALUES(10004,'1954-05-01','Chirstian','Koblick','M','1986-12-01'); INSERT INTO salaries VALUES(10001,88958,'2002-06-22','9999-01-01'); INSERT INTO salaries VALUES(10002,72527,'2001-08-02','9999-01-01'); INSERT INTO salaries VALUES(10003,43311,'2001-12-01','9999-01-01'); INSERT INTO salaries VALUES(10004,74057,'2001-11-27','9999-01-01');

employees表(員工表)?

salaries表(薪水表)

問題:請你查找薪水排名第二多的員工編號emp_no、薪水salary、last_name以及first_name,不能使用order by完成?

SELECT a.emp_no, b.salary, a.last_name, a.first_name FROM employees AS a INNER JOIN salaries AS b ON a.emp_no = b.emp_no WHERE b.salary = (SELECT MAX(salary)FROM salariesWHERE salary NOT IN(SELECT MAX(salary)FROM salaries));

結果展示:

17.查找所有員工的last_name和first_name以及對應的dept_name

數據導入

drop table if exists `departments` ; drop table if exists `dept_emp` ; drop table if exists `employees` ; CREATE TABLE `departments` ( `dept_no` char(4) NOT NULL, `dept_name` varchar(40) NOT NULL, PRIMARY KEY (`dept_no`)); CREATE TABLE `dept_emp` ( `emp_no` int(11) NOT NULL, `dept_no` char(4) NOT NULL, `from_date` date NOT NULL, `to_date` date NOT NULL, PRIMARY KEY (`emp_no`,`dept_no`)); CREATE TABLE `employees` ( `emp_no` int(11) NOT NULL, `birth_date` date NOT NULL, `first_name` varchar(14) NOT NULL, `last_name` varchar(16) NOT NULL, `gender` char(1) NOT NULL, `hire_date` date NOT NULL, PRIMARY KEY (`emp_no`)); INSERT INTO departments VALUES('d001','Marketing'); INSERT INTO departments VALUES('d002','Finance'); INSERT INTO departments VALUES('d003','Human Resources'); INSERT INTO dept_emp VALUES(10001,'d001','1986-06-26','9999-01-01'); INSERT INTO dept_emp VALUES(10002,'d001','1996-08-03','9999-01-01'); INSERT INTO dept_emp VALUES(10003,'d002','1990-08-05','9999-01-01'); INSERT INTO employees VALUES(10001,'1953-09-02','Georgi','Facello','M','1986-06-26'); INSERT INTO employees VALUES(10002,'1964-06-02','Bezalel','Simmel','F','1985-11-21'); INSERT INTO employees VALUES(10003,'1959-12-03','Parto','Bamford','M','1986-08-28'); INSERT INTO employees VALUES(10004,'1954-05-01','Chirstian','Koblick','M','1986-12-01');

employees表(員工表)

departments表(部門表)?

dept_emp表(部門員工關系表)?

問題:查找所有員工的last_name和first_name以及對應的dept_name,也包括暫時沒有分配部門的員工?

SELECT a.last_name, a.first_name, c.dept_name FROM employees AS a LEFT JOIN dept_emp AS b ON a.emp_no = b.emp_no LEFT JOIN departments AS c ON b.dept_no = c.dept_no;

結果展示:

18.獲取每個部門中當前員工薪水最高的相關信息

數據導入?

drop table if exists `dept_emp` ; drop table if exists `salaries` ; CREATE TABLE `dept_emp` ( `emp_no` int(11) NOT NULL, `dept_no` char(4) NOT NULL, `from_date` date NOT NULL, `to_date` date NOT NULL, PRIMARY KEY (`emp_no`,`dept_no`)); CREATE TABLE `salaries` ( `emp_no` int(11) NOT NULL, `salary` int(11) NOT NULL, `from_date` date NOT NULL, `to_date` date NOT NULL, PRIMARY KEY (`emp_no`,`from_date`)); INSERT INTO dept_emp VALUES(10001,'d001','1986-06-26','9999-01-01'); INSERT INTO dept_emp VALUES(10002,'d001','1996-08-03','9999-01-01'); INSERT INTO dept_emp VALUES(10003,'d002','1996-08-03','9999-01-01');INSERT INTO salaries VALUES(10001,88958,'2002-06-22','9999-01-01'); INSERT INTO salaries VALUES(10002,72527,'2001-08-02','9999-01-01'); INSERT INTO salaries VALUES(10003,92527,'2001-08-02','9999-01-01');

dept_emp表(員工表)

salaries表(薪水表)

問題:獲取每個部門中當前員工薪水最高的相關信息,給出dept_no, emp_no以及其對應的salary,按照部門編號dept_no升序排列?

SELECT temp.dept_no, temp.emp_no, temp.salary AS maxSalary FROM (SELECT a.dept_no, b.emp_no, b.salary,DENSE_RANK() OVER (PARTITION BY a.dept_no ORDER BY b.salary DESC)AS dense_rankingFROM dept_emp AS aINNER JOIN salaries AS bON a.emp_no = b.emp_no)AS temp WHERE temp.dense_ranking = 1 ORDER BY temp.dept_no ASC;

結果展示:

19.統計各個部門的工資記錄數?

數據導入

drop table if exists `departments` ; drop table if exists `dept_emp` ; drop table if exists `salaries` ; CREATE TABLE `departments` ( `dept_no` char(4) NOT NULL, `dept_name` varchar(40) NOT NULL, PRIMARY KEY (`dept_no`)); CREATE TABLE `dept_emp` ( `emp_no` int(11) NOT NULL, `dept_no` char(4) NOT NULL, `from_date` date NOT NULL, `to_date` date NOT NULL, PRIMARY KEY (`emp_no`,`dept_no`)); CREATE TABLE `salaries` ( `emp_no` int(11) NOT NULL, `salary` int(11) NOT NULL, `from_date` date NOT NULL, `to_date` date NOT NULL, PRIMARY KEY (`emp_no`,`from_date`)); INSERT INTO departments VALUES('d001','Marketing'); INSERT INTO departments VALUES('d002','Finance'); INSERT INTO dept_emp VALUES(10001,'d001','2001-06-22','9999-01-01'); INSERT INTO dept_emp VALUES(10002,'d001','1996-08-03','9999-01-01'); INSERT INTO dept_emp VALUES(10003,'d002','1996-08-03','9999-01-01'); INSERT INTO salaries VALUES(10001,85097,'2001-06-22','2002-06-22'); INSERT INTO salaries VALUES(10001,88958,'2002-06-22','9999-01-01'); INSERT INTO salaries VALUES(10002,72527,'1996-08-03','9999-01-01'); INSERT INTO salaries VALUES(10003,32323,'1996-08-03','9999-01-01');

departments表(部門表)

dept_?emp表(部門員工關系表)?

salaries表(薪水表)

問題:統計各個部門的工資記錄數,給出部門編碼dept_no、部門名稱dept_name以及部門在salaries表里面有多少條記錄sum,按照dept_no升序排序(輸出結果順序:dept_no,dept_name, sum)

SELECT a.dept_no, a.dept_name, COUNT(c.salary)AS 'sum' FROM departments AS a INNER JOIN dept_emp AS b ON a.dept_no = b.dept_no INNER JOIN salaries AS c ON b.emp_no = c.emp_no GROUP BY a.dept_no ORDER BY a.dept_no ASC;

結果展示:

20.對所有員工的薪水按照salary降序進行1-N的排名

數據導入

drop table if exists `salaries` ; CREATE TABLE `salaries` ( `emp_no` int(11) NOT NULL, `salary` int(11) NOT NULL, `from_date` date NOT NULL, `to_date` date NOT NULL, PRIMARY KEY (`emp_no`,`from_date`)); INSERT INTO salaries VALUES(10001,88958,'2002-06-22','9999-01-01'); INSERT INTO salaries VALUES(10002,72527,'2001-08-02','9999-01-01'); INSERT INTO salaries VALUES(10003,43311,'2001-12-01','9999-01-01'); INSERT INTO salaries VALUES(10004,72527,'2001-12-01','9999-01-01');

salaries表(薪水表)

問題:對所有員工的薪水按照salary降序先進行1-N的排名,如果salary相同,再按照emp_no升序排列?

SELECT emp_no, salary, DENSE_RANK() OVER (ORDER BY salary DESC)AS t_rank FROM salaries;

結果展示:

21.將employees表的所有員工的last_name和first_name拼接起來作為Name

數據導入

drop table if exists `employees` ; CREATE TABLE `employees` (`emp_no` int(11) NOT NULL,`birth_date` date NOT NULL,`first_name` varchar(14) NOT NULL,`last_name` varchar(16) NOT NULL,`gender` char(1) NOT NULL,`hire_date` date NOT NULL,PRIMARY KEY (`emp_no`)); INSERT INTO employees VALUES(10001,'1953-09-02','Georgi','Facello','M','1986-06-26'); INSERT INTO employees VALUES(10002,'1964-06-02','Bezalel','Simmel','F','1985-11-21'); INSERT INTO employees VALUES(10003,'1959-12-03','Parto','Bamford','M','1986-08-28'); INSERT INTO employees VALUES(10004,'1954-05-01','Chirstian','Koblick','M','1986-12-01'); INSERT INTO employees VALUES(10005,'1955-01-21','Kyoichi','Maliniak','M','1989-09-12'); INSERT INTO employees VALUES(10006,'1953-04-20','Anneke','Preusig','F','1989-06-02'); INSERT INTO employees VALUES(10007,'1957-05-23','Tzvetan','Zielinski','F','1989-02-10'); INSERT INTO employees VALUES(10008,'1958-02-19','Saniya','Kalloufi','M','1994-09-15'); INSERT INTO employees VALUES(10009,'1952-04-19','Sumant','Peac','F','1985-02-18'); INSERT INTO employees VALUES(10010,'1963-06-01','Duangkaew','Piveteau','F','1989-08-24'); INSERT INTO employees VALUES(10011,'1953-11-07','Mary','Sluis','F','1990-01-22');

employees表?

問題:將employees表的所有員工的last_name和first_name拼接起來作為Name,中間以一個空格區分?

SELECT CONCAT(last_name, ' ', first_name)AS Name FROM employees;

結果展示:

22.使用子查詢的方式找出屬于Action分類的所有電影對應的title,description?

數據導入

drop table if exists film ; drop table if exists category ; drop table if exists film_category ; CREATE TABLE IF NOT EXISTS film (film_id smallint(5) NOT NULL DEFAULT '0',title varchar(255) NOT NULL,description text,PRIMARY KEY (film_id)); CREATE TABLE category (category_id tinyint(3) NOT NULL ,name varchar(25) NOT NULL, `last_update` timestamp,PRIMARY KEY ( category_id )); CREATE TABLE film_category (film_id smallint(5) NOT NULL,category_id tinyint(3) NOT NULL, `last_update` timestamp); INSERT INTO film VALUES(1,'ACADEMY DINOSAUR','A Epic Drama of a Feminist And a Mad Scientist who must Battle a Teacher in The Canadian Rockies'); INSERT INTO film VALUES(2,'ACE GOLDFINGER','A Astounding Epistle of a Database Administrator And a Explorer who must Find a Car in Ancient China'); INSERT INTO film VALUES(3,'ADAPTATION HOLES','A Astounding Reflection of a Lumberjack And a Car who must Sink a Lumberjack in A Baloon Factory');INSERT INTO category VALUES(1,'Action','2006-02-14 20:46:27'); INSERT INTO category VALUES(2,'Animation','2006-02-14 20:46:27'); INSERT INTO category VALUES(3,'Children','2006-02-14 20:46:27'); INSERT INTO category VALUES(4,'Classics','2006-02-14 20:46:27'); INSERT INTO category VALUES(5,'Comedy','2006-02-14 20:46:27'); INSERT INTO category VALUES(6,'Documentary','2006-02-14 20:46:27');INSERT INTO film_category VALUES(1,1,'2006-02-14 21:07:09'); INSERT INTO film_category VALUES(2,1,'2006-02-14 21:07:09'); INSERT INTO film_category VALUES(3,6,'2006-02-14 21:07:09');

film表

film_id:電影id? title:電影名稱? description:電影描述信息?

category表

category_id:電影分類id??name:電影分類名稱??last_update:電影分類最后更新時間?

film_category表?

film_id:電影id? category_id:電影分類id??

last_update:電影id和分類id對應關系的最后更新時間?

問題:使用子查詢的方式找出屬于Action分類的所有電影對應的title,description

SELECT title, description FROM film WHERE film_id IN (SELECT film_idFROM film_categoryWHERE category_id IN (SELECT category_idFROM categoryWHERE name = 'Action'));

結果展示:?

23.使用join查詢方式找出沒有分類的電影id以及名稱

數據導入

drop table if exists film ; drop table if exists film_category ; CREATE TABLE IF NOT EXISTS film (film_id smallint(5) NOT NULL DEFAULT '0',title varchar(255) NOT NULL,description text,PRIMARY KEY (film_id));CREATE TABLE film_category (film_id smallint(5) NOT NULL,category_id tinyint(3) NOT NULL, `last_update` timestamp);INSERT INTO film VALUES(1,'ACADEMY DINOSAUR','A Epic Drama of a Feminist And a Mad Scientist who must Battle a Teacher in The Canadian Rockies'); INSERT INTO film VALUES(2,'ACE GOLDFINGER','A Astounding Epistle of a Database Administrator And a Explorer who must Find a Car in Ancient China'); INSERT INTO film VALUES(3,'ADAPTATION HOLES','A Astounding Reflection of a Lumberjack And a Car who must Sink a Lumberjack in A Baloon Factory');INSERT INTO film_category VALUES(1,6,'2006-02-14 21:07:09'); INSERT INTO film_category VALUES(2,11,'2006-02-14 21:07:09');

film表(電影信息表)

film_id:電影id? title:電影名稱? description:電影描述信息?

film_category表(電影分類表)?

film_id:電影id? category_id:電影分類id??

last_update:電影id和分類id對應關系的最后更新時間?

問題:使用join查詢方式找出沒有分類的電影id以及其電影名稱

SELECT a.film_id, a.title FROM film AS a LEFT JOIN film_category AS b ON a.film_id = b.film_id WHERE category_id IS NULL;

結果展示:

24.匯總各個部門當前員工的title類型的分配數目?

數據導入

drop table if exists `departments` ; drop table if exists `dept_emp` ; drop table if exists titles ; CREATE TABLE `departments` ( `dept_no` char(4) NOT NULL, `dept_name` varchar(40) NOT NULL, PRIMARY KEY (`dept_no`)); CREATE TABLE `dept_emp` ( `emp_no` int(11) NOT NULL, `dept_no` char(4) NOT NULL, `from_date` date NOT NULL, `to_date` date NOT NULL, PRIMARY KEY (`emp_no`,`dept_no`)); CREATE TABLE titles ( `emp_no` int(11) NOT NULL, `title` varchar(50) NOT NULL, `from_date` date NOT NULL, `to_date` date DEFAULT NULL); INSERT INTO departments VALUES('d001','Marketing'); INSERT INTO departments VALUES('d002','Finance'); INSERT INTO dept_emp VALUES(10001,'d001','1986-06-26','9999-01-01'); INSERT INTO dept_emp VALUES(10002,'d001','1996-08-03','9999-01-01'); INSERT INTO dept_emp VALUES(10003,'d002','1995-12-03','9999-01-01'); INSERT INTO titles VALUES(10001,'Senior Engineer','1986-06-26','9999-01-01'); INSERT INTO titles VALUES(10002,'Staff','1996-08-03','9999-01-01'); INSERT INTO titles VALUES(10003,'Senior Engineer','1995-12-03','9999-01-01');

departments表(部門表)?

dept_emp表(部門員工關系表)?

titles表(職稱表)?

問題:匯總各個部門當前員工的title類型的分配數目,即結果給出部門編號dept_no、dept_name、其部門下所有的員工的title以及該類型title對應的數目count,結果按照dept_no升序排序,dept_no一樣的再按title升序排序?

SELECT a.dept_no, a.dept_name, c.title, COUNT(c.title)AS 'count' FROM departments AS a INNER JOIN dept_emp AS b ON a.dept_no = b.dept_no INNER JOIN titles AS c ON b.emp_no = c.emp_no GROUP BY a.dept_no, c.title ORDER BY a.dept_no ASC, c.title ASC;

結果展示:

25.獲取所有非manager員工當前的薪水情況

數據導入

drop table if exists `dept_emp` ; drop table if exists `dept_manager` ; drop table if exists `employees` ; drop table if exists `salaries` ; CREATE TABLE `dept_emp` ( `emp_no` int(11) NOT NULL, `dept_no` char(4) NOT NULL, `from_date` date NOT NULL, `to_date` date NOT NULL, PRIMARY KEY (`emp_no`,`dept_no`)); CREATE TABLE `dept_manager` ( `dept_no` char(4) NOT NULL, `emp_no` int(11) NOT NULL, `from_date` date NOT NULL, `to_date` date NOT NULL, PRIMARY KEY (`emp_no`,`dept_no`)); CREATE TABLE `employees` ( `emp_no` int(11) NOT NULL, `birth_date` date NOT NULL, `first_name` varchar(14) NOT NULL, `last_name` varchar(16) NOT NULL, `gender` char(1) NOT NULL, `hire_date` date NOT NULL, PRIMARY KEY (`emp_no`)); CREATE TABLE `salaries` ( `emp_no` int(11) NOT NULL, `salary` int(11) NOT NULL, `from_date` date NOT NULL, `to_date` date NOT NULL, PRIMARY KEY (`emp_no`,`from_date`)); INSERT INTO dept_emp VALUES(10001,'d001','1986-06-26','9999-01-01'); INSERT INTO dept_emp VALUES(10002,'d001','1996-08-03','9999-01-01'); INSERT INTO dept_manager VALUES('d001',10002,'1996-08-03','9999-01-01'); INSERT INTO employees VALUES(10001,'1953-09-02','Georgi','Facello','M','1986-06-26'); INSERT INTO employees VALUES(10002,'1964-06-02','Bezalel','Simmel','F','1996-08-03'); INSERT INTO salaries VALUES(10001,88958,'1986-06-26','9999-01-01'); INSERT INTO salaries VALUES(10002,72527,'1996-08-03','9999-01-01');

employees表(員工表)?

dept_emp表(部門員工關系表)?

dept_manager表(部門經理表)?

salaries表(薪水表)?

問題:獲取所有非manager員工薪水情況,給出dept_no、emp_no以及salary?

-- 解法1 SELECT a.dept_no, a.emp_no, b.salary FROM dept_emp AS a INNER JOIN salaries AS b ON a.emp_no = b.emp_no WHERE a.emp_no NOT IN(SELECT emp_no FROM dept_manager) AND a.to_date = '9999-01-01';-- 解法2 SELECT b.dept_no, a.emp_no, d.salary FROM employees AS a,dept_emp AS b,dept_manager AS c,salaries AS d WHERE a.emp_no = b.emp_no AND b.dept_no = c.dept_no AND b.emp_no != c.emp_no AND a.emp_no = d.emp_no;-- 解法3 SELECT de.dept_no,a.emp_no,s.salary FROM (SELECT emp_noFROM employees WHERE emp_no NOT IN (SELECT emp_noFROM dept_manager))AS a INNER JOIN dept_emp AS de ON a.emp_no=de.emp_no INNER JOIN salaries AS s ON a.emp_no=s.emp_no WHERE s.to_date='9999-01-01';

結果展示:

26.查找在職員工自入職以來的薪水漲幅情況?

數據導入

drop table if exists `employees` ; drop table if exists `salaries` ; CREATE TABLE `employees` ( `emp_no` int(11) NOT NULL, `birth_date` date NOT NULL, `first_name` varchar(14) NOT NULL, `last_name` varchar(16) NOT NULL, `gender` char(1) NOT NULL, `hire_date` date NOT NULL, PRIMARY KEY (`emp_no`)); CREATE TABLE `salaries` ( `emp_no` int(11) NOT NULL, `salary` int(11) NOT NULL, `from_date` date NOT NULL, `to_date` date NOT NULL, PRIMARY KEY (`emp_no`,`from_date`)); INSERT INTO employees VALUES(10001,'1953-09-02','Georgi','Facello','M','2001-06-22'); INSERT INTO employees VALUES(10002,'1964-06-02','Bezalel','Simmel','F','1999-08-03'); INSERT INTO salaries VALUES(10001,85097,'2001-06-22','2002-06-22'); INSERT INTO salaries VALUES(10001,88958,'2002-06-22','9999-01-01'); INSERT INTO salaries VALUES(10002,72527,'1999-08-03','2000-08-02'); INSERT INTO salaries VALUES(10002,72527,'2000-08-02','2001-08-02');

employees表(員工表)

salaries表(薪水表)?

問題:查找在職員工自入職以來的薪水漲幅情況,給出在職員工編號emp_no以及其對應的薪水漲幅growth,并按照growth進行升序 (注明: to_date為薪資調整某個結束日期,或者為離職日期,to_date='9999-01-01'時,表示依然在職,無后續調整記錄)

-- 解法1 SELECT a.emp_no, (a.now_salary - b.past_salary) AS growth FROM (SELECT emp_no, salary AS now_salaryFROM salaries WHERE to_date = '9999-01-01') AS a INNER JOIN (SELECT a.emp_no, b.salary AS past_salaryFROM employees AS aINNER JOIN salaries AS bON a.emp_no = b.emp_noWHERE a.hire_date = b.from_dateAND a.emp_no IN (SELECT emp_no FROM salariesWHERE to_date = '9999-01-01')) AS b ON a.emp_no = b.emp_no ORDER BY growth ASC;-- 解法2 SELECT a.emp_no, (b.salary - c.salary)AS growth FROM employees AS a INNER JOIN salaries AS b ON a.emp_no = b.emp_no AND b.to_date = '9999-01-01' INNER JOIN salaries AS c ON a.emp_no = c.emp_no AND a.hire_date = c.from_date ORDER BY growth ASC;

結果展示:

27.獲取員工其當前的薪水比其manager當前薪水還高的相關信息?

數據導入

drop table if exists `dept_emp` ; drop table if exists `dept_manager` ; drop table if exists `salaries` ; CREATE TABLE `dept_emp` ( `emp_no` int(11) NOT NULL, `dept_no` char(4) NOT NULL, `from_date` date NOT NULL, `to_date` date NOT NULL, PRIMARY KEY (`emp_no`,`dept_no`)); CREATE TABLE `dept_manager` ( `dept_no` char(4) NOT NULL, `emp_no` int(11) NOT NULL, `from_date` date NOT NULL, `to_date` date NOT NULL, PRIMARY KEY (`emp_no`,`dept_no`)); CREATE TABLE `salaries` ( `emp_no` int(11) NOT NULL, `salary` int(11) NOT NULL, `from_date` date NOT NULL, `to_date` date NOT NULL, PRIMARY KEY (`emp_no`,`from_date`)); INSERT INTO dept_emp VALUES(10001,'d001','1986-06-26','9999-01-01'); INSERT INTO dept_emp VALUES(10002,'d001','1996-08-03','9999-01-01'); INSERT INTO dept_manager VALUES('d001',10002,'1996-08-03','9999-01-01'); INSERT INTO salaries VALUES(10001,88958,'2002-06-22','9999-01-01'); INSERT INTO salaries VALUES(10002,72527,'1996-08-03','9999-01-01');

dept_emp表(部門關系表)?

dept_manager表(部門經理表)?

salaries表(薪水表)?

問題:獲取員工其當前的薪水比其manager當前薪水還高的相關信息

輸出結果順序:

第一列給出員工的emp_no

第二列給出其manager的manager_no

第三列給出該員工當前的薪水emp_salary

第四列給該員工對應的manager當前的薪水manager_salary

SELECT a.yuangong_num AS emp_no, b.manager_num AS manager_no, a.yuangong_money AS emp_salary, b.manager_money AS manager_salary FROM (SELECT a.emp_no AS yuangong_num, b.salary AS yuangong_money, a.dept_noFROM dept_emp AS aINNER JOIN salaries AS bON a.emp_no = b.emp_noINNER JOIN dept_manager AS cON a.dept_no = c.dept_noWHERE a.emp_no != c.emp_no) AS a INNER JOIN (SELECT a.emp_no AS manager_num, b.salary AS manager_money, a.dept_noFROM dept_manager AS aINNER JOIN salaries AS bON a.emp_no = b.emp_no) AS b ON a.dept_no = b.dept_no WHERE a.yuangong_money > b.manager_money;

結果展示:

總結

以上是生活随笔為你收集整理的SQL题集(二)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

成年人黄色大全 | 国产精品入口麻豆www | 九九精品久久久 | 天堂av在线 | 亚洲精品高清视频在线观看 | 久草免费手机视频 | 欧美日韩中文字幕综合视频 | 在线看岛国av | bayu135国产精品视频 | 国产啊v在线观看 | 亚洲 欧美 变态 国产 另类 | 日本99久久 | 精品国产一区二区三区男人吃奶 | 国产一区二区精品91 | 亚洲欧洲久久久 | 九色精品在线 | 亚洲成人av片在线观看 | 国产伦精品一区二区三区免费 | 国产午夜在线观看 | 欧美国产日韩一区二区三区 | 国产精品第一 | 亚洲午夜av | 丝袜制服综合网 | 天天色.com| 午夜电影 电影 | 欧美另类一二三四区 | 久久国产精品视频免费看 | 欧美污污视频 | 国产在线一区观看 | 日韩亚洲在线 | 午夜精品久久一牛影视 | 免费观看av网站 | 亚洲精品色婷婷 | 日韩精品三区四区 | 五月综合网站 | 欧美日韩精品在线视频 | 国产糖心vlog在线观看 | 97成人在线视频 | 国产短视频在线播放 | 成人av动漫在线观看 | 伊人亚洲综合网 | 久久精品日产第一区二区三区乱码 | 国产精品美女 | 手机看片 | 四虎在线免费观看 | 成人网页在线免费观看 | 成人免费观看完整版电影 | 超碰国产在线播放 | 国产美女精品久久久 | 日韩av网址在线 | 日韩精品中文字幕一区二区 | 99久久国产免费,99久久国产免费大片 | 超碰在线人人艹 | 日韩成人邪恶影片 | 欧美综合久久久 | 在线看的av网站 | 青春草免费在线视频 | 国产91学生粉嫩喷水 | 久免费| 亚洲www天堂com | 久久国产午夜精品理论片最新版本 | 九九热免费在线视频 | 国产美女视频一区 | 国产玖玖视频 | 高清免费在线视频 | 欧美激情h | 国产尤物在线视频 | 国产小视频在线播放 | 精品视频99| 91精品国产综合久久久久久久 | 午夜视频色 | 国产中文字幕在线免费观看 | 小草av在线播放 | 一区二区伦理电影 | 午夜精品福利在线 | 蜜臀av免费一区二区三区 | 久久精品综合网 | 中文视频在线播放 | 国产麻豆精品95视频 | 国产成人精品久 | 国产精品video| 91九色精品女同系列 | 免费看色视频 | 一区在线观看视频 | 99热手机在线 | 免费网站观看www在线观看 | 天天操夜夜曰 | 免费看v片网站 | 久久久免费少妇 | 国产高清永久免费 | 成人精品在线 | 国产精品毛片一区二区三区 | 成人a视频 | 国产一区二区在线精品 | 免费在线观看黄网站 | 麻豆一区在线观看 | 成人av视屏 | 色综合久久综合网 | 久久精品系列 | 亚洲 欧美 另类人妖 | 中文字幕色在线视频 | 91av国产视频 | 国产一区二区精品久久 | 免费在线观看国产精品 | 久久理论电影网 | 中文字幕久久久精品 | 精品二区视频 | 国产精品福利午夜在线观看 | 在线免费av电影 | 色婷婷激情综合 | 在线播放 亚洲 | 亚洲播播 | 亚洲精品午夜久久久久久久 | 欧美激情奇米色 | 天天操天天干天天插 | 亚洲污视频 | 草免费视频 | 91自拍视频在线 | 久久视频精品在线观看 | 天天操 夜夜操 | 国产精品久久久久影视 | 天天爽天天爽 | 51久久夜色精品国产麻豆 | 日韩在线观看 | 最近日韩免费视频 | 中文免费 | 色99之美女主播在线视频 | 精品免费99久久 | 综合激情av | 不卡的一区二区三区 | 国产91精品高清一区二区三区 | 国产成人99久久亚洲综合精品 | 亚洲电影院| 亚洲一区不卡视频 | 日韩欧美一区二区不卡 | 国产精品成人一区二区三区 | 人人爽人人澡人人添人人人人 | 日韩视频www | 精品福利网站 | 97成人在线视频 | 免费日韩一区二区 | 免费手机黄色网址 | 99精品系列 | 日韩av在线资源 | 国产精品国产三级国产专区53 | 久久人人97超碰精品888 | www.天天草| 日韩大陆欧美高清视频区 | www.狠狠| 日韩aⅴ视频 | 国产精品欧美久久久久天天影视 | 国产在线国偷精品产拍 | 操操操人人| 一二区电影 | 日韩欧美在线国产 | 久久久久久久久久免费视频 | 中文区中文字幕免费看 | 久久66热这里只有精品 | 91色九色 | 国产黄在线 | 国产黄色av网站 | 亚洲高清在线 | 亚洲成人免费在线 | 成片人卡1卡2卡3手机免费看 | 免费又黄又爽 | 久久久久久久免费观看 | 色婷婷综合在线 | 成人av在线一区二区 | 国产精品男女 | 亚洲国产日韩精品 | 最新国产精品久久精品 | 亚洲热视频| 国产在线观看一 | 国产精品久久亚洲 | 免费黄色a网站 | 亚洲精选在线 | 国产精品久久久久久久毛片 | 日韩精品综合在线 | 国产91精品欧美 | 免费a视频| 久久视频网 | 精品国产福利在线 | 日日日操操 | 精品福利网站 | 久久久国产精品久久久 | 欧美久久综合 | 成x99人av在线www | 国产中文字幕视频 | 91福利在线观看 | 麻豆一区二区三区视频 | 欧洲黄色片 | 视频一区二区三区视频 | 精品黄色片 | 在线观看免费日韩 | 国产精品美女久久久久aⅴ 干干夜夜 | 国产日韩精品一区二区在线观看播放 | 国产中文字幕网 | 99热这里有精品 | 97碰碰精品嫩模在线播放 | 日本视频不卡 | 97电影网手机版 | 爱色婷婷 | 最近更新好看的中文字幕 | 在线性视频日韩欧美 | 国产麻豆视频免费观看 | 91丨九色丨蝌蚪丰满 | 欧美黄色高清 | 亚洲砖区区免费 | 精品国产乱码久久久久久浪潮 | 国产精品免费在线 | 久久极品 | 精品久久久久亚洲 | 国产亚洲综合性久久久影院 | 亚洲黄色成人 | 操老逼免费视频 | 日韩在线观看av | 91综合久久一区二区 | 亚洲成成品网站 | 热99在线视频 | 久久久麻豆精品一区二区 | 97在线观看免费高清完整版在线观看 | 国产精品嫩草55av | 久久免费精品视频 | 日本不卡一区二区三区在线观看 | 九九色在线观看 | 日韩a级黄色 | 国际精品久久 | 欧美性生活大片 | 欧美日韩国产区 | 亚洲成人黄| 天天色天天艹 | 国产专区日韩专区 | 欧美极品久久 | 久久www免费人成看片高清 | 中文伊人| 中文字幕有码在线观看 | 国产二区电影 | 成人av免费看 | 99免在线观看免费视频高清 | 免费美女久久99 | 日韩一区二区在线免费观看 | 国产黄色高清 | 国产成人一区在线 | 一区二区丝袜 | 亚洲天堂网站视频 | 精品久久久久久综合日本 | 久久国产亚洲 | 五月激情在线 | 成年人免费在线播放 | 久艹视频在线免费观看 | 欧美性一级观看 | 久黄色 | 中文字幕国产一区二区 | 天天干天天干天天干天天干天天干天天干 | 国产精品爽爽爽 | 国产网站av| 日韩三级在线观看 | 国产护士hd高朝护士1 | 欧美日韩高清一区二区三区 | 狠狠色丁香久久婷婷综合五月 | 久久精品久久99精品久久 | 一区在线免费观看 | 欧美91精品久久久久国产性生爱 | 久久免费播放 | 五月天久久 | 色午夜 | 狠狠色丁香婷婷综合橹88 | 一区二区三区电影 | 波多野结衣在线中文字幕 | 一级做a爱片性色毛片www | 99久久99久久精品 | 人人讲 | 亚洲二级片 | 中文字幕中文字幕在线中文字幕三区 | 久久久久免费网 | 国产精品一区在线播放 | 欧美日韩精品在线观看 | 色播五月婷婷 | 精品久久久久国产 | 91成人精品一区在线播放69 | 精品久久国产 | 欧美成年人在线视频 | 免费在线成人av电影 | 久草视频手机在线 | 999超碰 | 在线视频一二区 | 国产v欧美| 狠狠狠色丁香综合久久天下网 | 久久99最新地址 | 国产精品久久久久久五月尺 | 亚洲高清av在线 | 在线观看视频色 | av在线色 | 婷婷色网站 | 亚洲国产精品99久久久久久久久 | 六月丁香激情网 | 欧美日韩精品区 | 免费看黄色毛片 | 一区二区三区三区在线 | 在线观看a视频 | 国产一线二线三线在线观看 | 久久精品视频在线 | 精品视频在线看 | a级国产乱理论片在线观看 特级毛片在线观看 | 天天操天天插 | 在线观看日韩av | 特级西西www44高清大胆图片 | 精品在线观看一区二区三区 | 日韩在线观看av | 日韩二区在线播放 | 天天摸天天舔天天操 | 久久免费久久 | 色婷婷国产在线 | 精品人人人人 | 欧美精品久久久久久久久久丰满 | 三级av在线播放 | 超碰大片| 麻豆av一区二区三区在线观看 | 91在线超碰 | 成年人三级网站 | 在线国产观看 | 国产精品免费观看视频 | 中文字幕第一页在线vr | 在线观看视频免费大全 | 亚洲国产精品激情在线观看 | 欧美激情第28页 | 国产精品手机视频 | 日韩在线免费高清视频 | 国产精品免费久久久久影院仙踪林 | 国产九九九九九 | 美女网站视频久久 | 免费看国产精品 | 色婷五月天| 国产福利91精品一区 | 久久久精品网 | 免费特级黄毛片 | 久久精品久久久精品美女 | 免费在线观看av | 日韩av成人在线 | 国产成人亚洲精品自产在线 | 日本不卡123 | 在线观看视频国产一区 | 欧美污在线观看 | 99精品视频一区二区 | 99久久婷婷国产一区二区三区 | 成人国产精品av | 综合在线观看色 | 成人午夜网 | 69绿帽绿奴3pvideos | 人人玩人人爽 | 国产专区欧美专区 | 久久亚洲精品国产亚洲老地址 | 欧美天堂视频在线 | 91麻豆精品一区二区三区 | 九九国产精品视频 | 亚洲日本激情 | 国产精品一区二区久久精品 | 97狠狠操 | 中文字幕在线观看免费观看 | 蜜桃久久久| 国产精品国产亚洲精品看不卡 | 久久久综合电影 | 欧美一区成人 | 亚洲综合成人在线 | 一区 在线观看 | 韩国中文三级 | 天天天综合网 | 91理论片午午伦夜理片久久 | a电影在线观看 | 国产精品欧美日韩在线观看 | 2021国产精品视频 | 看片黄网站 | 久久精选视频 | 久久艹综合 | 久久久久一区二区三区 | 日韩免费视频 | 日韩免费观看视频 | 亚州国产精品久久久 | 在线观看一区 | 1024手机基地在线观看 | 在线亚洲小视频 | 国产一级视频免费看 | 亚洲午夜精品一区 | 天天插综合网 | 亚洲www天堂com | 亚洲黑丝少妇 | 欧美性色综合网 | 成人免费xxxxxx视频 | 日本韩国精品一区二区在线观看 | 激情久久伊人 | 中文字幕视频网站 | 久久手机看片 | 91av蜜桃| 麻豆超碰| 国产亚洲日| 国产精品一区二区三区在线播放 | 久久看片 | 久久一区二区免费视频 | 日日操网站 | 日韩大陆欧美高清视频区 | 激情电影在线观看 | 日韩电影中文 | 婷婷久久国产 | 久久在线免费观看 | wwxxxx日本 | 国产精品嫩草影院99网站 | 欧美日韩在线观看一区二区三区 | 久久96国产精品久久99漫画 | 一区二区三区日韩在线 | 国产视频网站在线观看 | 久久香蕉电影网 | 懂色av懂色av粉嫩av分享吧 | 久久人人射 | 亚洲精品久久久久久国 | 黄色小说在线免费观看 | 超碰人人在线观看 | 中文字幕av最新更新 | 国产精品久久久久久久久久久久冷 | 超碰97公开 | 天天玩天天操天天射 | 日韩二区在线 | 免费观看一级成人毛片 | 婷婷丁香视频 | 亚洲欧美日韩一区二区三区在线观看 | 五月综合激情婷婷 | 国产精品一区二区三区在线 | 99精品国产一区二区 | 久久人人射 | 亚洲在线a | 韩日av在线 | 精品一区中文字幕 | 五月天激情视频在线观看 | 久99久精品视频免费观看 | 亚洲女在线 | 日本乱视频 | 永久免费的av电影 | 欧美日韩在线精品一区二区 | 91插插插免费视频 | 国产又粗又猛又色又黄视频 | 亚洲资源片| 九九热国产视频 | 免费av影视| 亚洲精品视频在线播放 | 亚洲精品videossex少妇 | 97在线免费 | 精品国产aⅴ麻豆 | 免费涩涩网站 | 日本久久精品视频 | 在线播放日韩av | 激情av在线资源 | 亚洲精品字幕 | 久久久麻豆精品一区二区 | 久久se视频 | 五月天亚洲激情 | 丁香花在线视频观看免费 | 亚洲另类久久 | 欧洲黄色片 | 国产亚洲精品综合一区91 | 麻豆视频www | 亚洲在线视频播放 | 国产小视频在线看 | 日本成址在线观看 | 激情久久久久 | 日韩美女黄色片 | 国产在线精品区 | 欧美大片在线观看一区 | 免费精品国产 | 色中文字幕在线观看 | 亚洲一区美女视频在线观看免费 | 99热精品久久 | 人人爽人人爱 | 91免费的视频在线播放 | 美腿丝袜av | 欧美日在线观看 | 亚洲91在线 | 韩国av三级 | 国内精品一区二区 | 婷婷色资源 | 精品福利在线观看 | 久久免费视频在线观看6 | a级国产乱理论片在线观看 特级毛片在线观看 | 激情伊人五月天久久综合 | 成片人卡1卡2卡3手机免费看 | 五月婷婷六月丁香 | 久久久午夜精品理论片中文字幕 | 久爱综合 | 91成人天堂久久成人 | 国产又粗又猛又爽又黄的视频先 | 久久中文字幕导航 | 在线观看视频亚洲 | 国产黄色大片免费看 | 亚洲激精日韩激精欧美精品 | 国产经典 欧美精品 | 97超碰人人澡人人爱学生 | 天天摸日日操 | 麻豆网站免费观看 | 六月丁香六月婷婷 | 日本老少交| 亚洲精品乱码久久久久久久久久 | 日韩在线视频免费播放 | 亚洲日日夜夜 | 视频在线精品 | 欧美日韩另类在线 | 在线观看成人小视频 | 久久久午夜精品福利内容 | 婷婷激情网站 | 国产精品6999成人免费视频 | 天天射网| 伊人资源站 | 国产高清不卡一区二区三区 | 免费视频在线观看网站 | 日日操夜夜操狠狠操 | 欧美另类交在线观看 | 91试看 | 精品福利av| 视频二区在线视频 | 成人av动漫在线 | 狠狠色丁香婷婷综合基地 | 九色精品 | 精品国产123| 国产一级视频在线 | 国产男男gay做爰 | 麻豆国产精品永久免费视频 | 久久你懂的 | 久久久精品视频网站 | 亚洲视频 一区 | ww视频在线观看 | 日韩精品一区二区在线观看 | 日韩草比 | 免费麻豆网站 | 国产中文字幕亚洲 | 免费av在线播放 | 美女黄视频免费看 | 欧美精品在线一区 | av黄免费看 | 亚洲黄色免费电影 | 久草视频免费观 | 四虎影视久久久 | 亚洲日本一区二区在线 | 丁香影院在线 | 亚洲成免费| 中文字幕资源在线观看 | 91福利区一区二区三区 | 91视频免费看网站 | 亚洲电影成人 | 狠狠成人| 久久免费观看视频 | 国产精品视频线看 | 久热av | 黄色av三级在线 | 国产一区二区成人 | 成人午夜网址 | 国产精品一区二区美女视频免费看 | 999成人免费视频 | 国产精品一区二区久久久 | 超碰在线观看99 | 激情婷婷欧美 | 777久久久| 国产精品情侣视频 | 精品国产一区二 | 综合视频在线 | 黄av在线 | 亚洲成人精品久久久 | 亚洲做受高潮欧美裸体 | 大片网站久久 | 久久精品国亚洲 | 国产精品一区二区在线播放 | 日日爱网址 | 精品在线免费观看 | 色噜噜日韩精品欧美一区二区 | 久久久久久久久久久久av | 在线观看日韩精品视频 | www.91成人| 麻豆免费在线播放 | 久操久| 亚洲 欧美 精品 | 亚洲黑丝少妇 | 国产美女视频黄a视频免费 久久综合九色欧美综合狠狠 | 中文永久免费观看 | 97精品国产97久久久久久免费 | 日韩欧美高清免费 | 久青草影院 | 看片的网址 | 久久免费看av | 奇米网8888 | www色 | 色999精品 | 亚洲九九 | 美女久久久久久 | 国产一区二区在线看 | 狠狠狠狠干 | 国产精品黄色影片导航在线观看 | 91精品视频一区 | 在线看的av网站 | 国产九九九视频 | 国内精品毛片 | 中文字幕中文字幕中文字幕 | 人人精品久久 | 国产精品久久久久久模特 | 中日韩欧美精彩视频 | 久久y| 久久精品国亚洲 | 精品久久免费看 | 波多在线视频 | av九九| 激情视频二区 | 国产黄在线免费观看 | 成人免费观看网站 | 婷婷丁香自拍 | 亚洲视频免费 | 欧美性成人 | 久久99热国产 | 日本三级全黄少妇三2023 | 欧美日韩精品影院 | 亚洲国产精品va在线 | 91精品国自产在线 | 在线观看国产麻豆 | 国产网站在线免费观看 | 国产成人精品免费在线观看 | 午夜 免费 | 欧美极品一区二区三区 | 亚洲成av| 国产精品自产拍在线观看蜜 | 97在线观看免费高清完整版在线观看 | 中文字幕av有码 | 美女网站视频色 | 超碰97在线资源站 | 久久精品国产99国产 | 久久中文网 | 欧美在线视频一区二区三区 | 99久久精品无码一区二区毛片 | 欧美老女人xx | 免费合欢视频成人app | 国产在线不卡视频 | 黄网站色视频免费观看 | 在线观看v片| 国产一区欧美二区 | 香蕉影视app | 国产不卡毛片 | 国产五月天婷婷 | 69av视频在线 | 久久中文字幕导航 | 草久久av| 免费观看黄 | 国产不卡在线 | 国产一区二区高清 | 日韩三区在线 | 欧美a影视 | av在线免费观看网站 | 亚洲aⅴ久久精品 | 日日夜夜天天久久 | 91大神精品视频 | 中文字幕电影在线 | 99久在线精品99re8热视频 | japanesefreesexvideo高潮 | 成人精品久久久 | 国产裸体视频网站 | 超碰个人在线 | 久久久久这里只有精品 | 黄色网www | 91三级视频| 日韩中出在线 | 一区二区三区中文字幕在线观看 | 欧美美女激情18p | 国产91成人 | 91久久精品一区二区二区 | 亚洲欧洲美洲av | 国产精品久久久久久久久久久杏吧 | 欧美a级在线 | 尤物九九久久国产精品的分类 | 就色干综合| 97免费视频在线播放 | 免费99| 欧美日韩在线视频一区二区 | 激情网第四色 | 黄色片视频免费 | 成年人视频在线观看免费 | 97精品在线| 精品毛片一区二区免费看 | 五月婷婷欧美 | 人人超在线公开视频 | 免费看色的网站 | av激情五月 | 波多野结衣电影一区二区 | 日韩精品一区二区三区不卡 | 国产黄色片一级三级 | 亚洲视频456| 麻豆久久久久 | 天天插狠狠干 | 国产精品1024 | 亚洲成人网av| 91麻豆网| 国产高清专区 | 福利二区视频 | 国产精品毛片网 | 国产伦精品一区二区三区… | av成人黄色 | 国产一区二区三区免费在线观看 | 日韩精品一区二区三区外面 | 亚洲精品理论 | 天天色天天爱天天射综合 | 亚洲成人黄| 精品亚洲视频在线观看 | 日韩高清成人 | 黄色毛片观看 | 日本免费一二三区 | 国产一区二区三区免费在线观看 | 日韩欧美高清视频在线观看 | 久久91久久久久麻豆精品 | 国产一区二区三区免费视频 | 精品视频在线免费 | 日韩视频一区二区三区在线播放免费观看 | 亚洲第一色| 国内外成人在线视频 | 亚洲国产婷婷 | 日韩欧美高清一区二区 | 欧美a级片免费看 | 91精品视频在线观看免费 | 国产视频在线观看一区 | 99久久久国产精品 | 91尤物在线播放 | 久久成人欧美 | 国产精品初高中精品久久 | 久久y | 最新国产福利 | 免费看精品久久片 | 亚洲日日夜夜 | 日本一区二区不卡高清 | 欧产日产国产69 | 国产精品久久久免费 | 综合网在线视频 | 超级av在线 | 日韩激情视频在线观看 | 91在线porny国产在线看 | 黄av在线| 欧美日韩精品在线 | 婷婷99| 中文字幕最新精品 | 久草在线播放视频 | 成人免费视频网站 | 在线小视频你懂得 | 狠狠狠操 | 中文字幕一区二区三区四区在线视频 | 久久久久一区二区三区 | 国产一区二区高清视频 | 日韩电影一区二区在线 | 日本中文字幕高清 | 99精品国产一区二区三区不卡 | 久久艹人人 | 久久九九精品久久 | 在线观看中文字幕 | 在线免费观看成人 | 在线精品一区二区 | 久久福利小视频 | 人人干免费 | 91精品在线看 | 激情综合啪啪 | 在线观看视频一区二区三区 | 国产精品一区一区三区 | 国产不卡精品 | 麻豆传媒电影在线观看 | 91av欧美| 欧美日韩69 | 99久免费精品视频在线观看 | 久久久久蜜桃 | 欧洲亚洲女同hd | 玖玖在线免费视频 | 福利视频在线看 | 国产亚洲精品久久久久久网站 | 亚洲欧洲一区二区在线观看 | www91在线 | 久久综合五月天婷婷伊人 | 最新日韩视频在线观看 | 亚洲欧美经典 | 亚洲三级在线 | 亚洲欧美国产精品久久久久 | 丁香六月网 | wwxxxx日本 | 国产精品美女在线 | 国产精品小视频网站 | 亚洲成人精品在线观看 | 成人影片在线免费观看 | 午夜999 | 国产精品久久久久久久午夜片 | 国产亚洲精品bv在线观看 | 国产91影视 | 最近中文字幕高清字幕免费mv | 99精品视频免费观看视频 | 精品国产亚洲在线 | av日韩在线网站 | 国产成人一区二区三区免费看 | 91精品国产电影 | 国产高清不卡在线 | 九九视频免费观看视频精品 | 亚洲综合小说 | 中文av资源站 | 99产精品成人啪免费网站 | 国产亚洲免费的视频看 | 精品久久久久久久 | 欧美在线资源 | 97电影网手机版 | 日本中文字幕电影在线免费观看 | 久久精品999| 在线免费日韩 | 久久区二区 | 国产精品一区在线观看 | 91网免费观看 | 日韩xxxbbb | 久久夜色电影 | 久久精品视频在线播放 | 久久av免费 | 天天干天天做天天爱 | 欧美激情操 | 国产亚洲精品福利 | 久久国产成人午夜av影院潦草 | 国产精品第一页在线观看 | 亚洲人成在线观看 | japanesexxxhd奶水 91在线精品一区二区 | 国产视频一 | 人人爱天天操 | 久久99久久99久久 | 日韩久久久久久久 | 日韩无在线| 日韩a欧美 | 久久久国产精品麻豆 | 色播五月激情综合网 | 久久久久久高潮国产精品视 | 激情综合六月 | 国产原创中文在线 | 日韩视频免费播放 | 99久久精品午夜一区二区小说 | 欧美精选一区二区三区 | 欧美一区二视频在线免费观看 | 久久精品一区二 | 在线国产中文字幕 | 欧美福利在线播放 | 成人理论在线观看 | 欧美精品三级 | 狠狠色丁香久久婷婷综合_中 | 久草剧场 | 美女精品在线 | 天天干天天拍天天操 | 中文字幕一区二区三区久久 | 中文字幕你懂的 | 日韩精品久久久久久久电影99爱 | 日韩在线视频不卡 | 国产一区二区三区在线 | 最新精品国产 | 成人午夜剧场在线观看 | 91九色pron| 在线激情电影 | 成人免费在线视频 | 日本夜夜草视频网站 | 欧美日韩性视频在线 | 91精品国产一区二区三区 | 免费毛片一区二区三区久久久 | 欧美日本不卡高清 | 国产中文字幕在线观看 | 五月天激情在线 | 国产日本在线观看 | 欧美精品亚洲精品日韩精品 | 欧美一区二区伦理片 | 久久综合久久综合久久 | 国产伦精品一区二区三区四区视频 | 91大神精品视频 | 国产精品xxxx18a99| 久久久精品 | 国产黄在线播放 | 青青草国产在线 | 免费亚洲成人 | 91麻豆精品国产自产在线 | 激情五月综合网 | 久久久婷 | 久久av电影 | 狠狠干天天操 | 国产精品久久久久久久婷婷 | 在线免费av电影 | av一级片网站 | 中文字幕一区二区三区四区视频 | 依人成人综合网 | 天天射天天爽 | 国内外成人在线视频 | 天天干天天碰 | 免费一级片视频 | 国际精品久久 | 日韩一级电影网站 | 欧洲精品视频一区二区 | 波多野结衣视频一区二区 | 日韩电影在线观看一区二区三区 | 国产一区二区三区 在线 | 在线草 | 91亚洲综合 | 国内精品久久久久久中文字幕 | 夜夜摸夜夜爽 | 日本久久久亚洲精品 | 精品一区二区三区久久久 | 久久电影国产免费久久电影 | 免费亚洲精品视频 | www色综合 | 99热最新在线 | 视频一区视频二区在线观看 | 亚洲国产午夜视频 | 成人在线免费小视频 | 色综合中文综合网 | 久久久久观看 | 日韩美女黄色片 | 99久久久国产精品 | av在线h | 丁香婷婷激情网 | 超碰免费公开 | 欧美做受高潮1 | 黄色小说免费在线观看 | 亚洲dvd| 日本视频不卡 | 手机av资源 | 97超碰影视 | 美女黄网站视频免费 | 久草亚洲视频 | 一级一级一片免费 | 人成电影网 | 欧美国产视频在线 | 婷婷在线网站 | 亚洲开心激情 | 91av在线视频免费观看 | 黄a在线观看 | 日韩一区二区三区观看 | 亚洲国产视频直播 | 国产又黄又爽又猛视频日本 | 中文字幕一区二区三区精华液 | 伊人成人激情 | 欧美做受高潮电影o | 国产精品高清免费在线观看 | 国内外成人免费在线视频 | 999成人 | 黄色精品一区 | 久久午夜免费观看 | 视频直播国产精品 | 国产 日韩 在线 亚洲 字幕 中文 | 91精品在线播放 | 色先锋av资源中文字幕 | 玖玖精品在线 | 日韩av免费大片 | 97超碰人人在线 | 欧洲视频一区 | 欧美精品成人在线 | 国产精品嫩草在线 | 五月天婷亚洲天综合网鲁鲁鲁 | 国产精品午夜在线 | 久久五月天婷婷 | 国产精品一码二码三码在线 | 午夜精品久久久久久久久久久 | 欧美日韩精品二区第二页 | 五月婷婷导航 | 99欧美视频 | 亚洲人人爱 | 精品国产一区二区在线 | 精品国产理论片 | 久草在线在线精品观看 | 狠狠色丁香久久婷婷综 | 天天干 夜夜操 | 黄色av一区二区 | 国内视频1区 | 四虎影视成人精品国库在线观看 | 美女久久一区 | 青青河边草观看完整版高清 | 亚洲成 人精品 | www亚洲精品 | 久久影院精品 | 久久久穴 | 国产精品一区欧美 | 成人影音在线 | 久色小说 | 一区二区三区 中文字幕 | 亚洲成人国产 | 日韩高清一区二区 | 久久艹影院 | 欧美精品中文字幕亚洲专区 | 久久久亚洲网站 | 日本不卡视频 | 久久五月情影视 | 97人人模人人爽人人喊网 | 亚洲一区二区精品在线 | 亚洲 精品在线视频 | 国产高清精 | 精品一区精品二区高清 | 香蕉手机在线 | 欧美精品一区二区在线观看 | 欧美性色综合网站 | adn—256中文在线观看 | 天天干人人干 | 国产在线 一区二区三区 | 91麻豆看国产在线紧急地址 | 国产无区一区二区三麻豆 | 香蕉视频网站在线观看 | 日本一区二区三区免费观看 | 黄色成年网站 | 97成人免费视频 | 狠狠躁天天躁综合网 |