SQL基礎練習
阿新 • • 發佈:2018-10-14
刪除 輸入 多人 查找 sql 找到 分享 sql基礎 數據
1 查找最晚入職員工的信息
題目描述
查找最晚入職員工的所有信息
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`));
輸入描述:
無
輸出描述:
示例1
輸入
無
輸出
無
1 CREATE DATABASE mybase;2 CREATE TABLE employees ( 3 emp_no INT(11) NOT NULL, 4 birth_date DATE NOT NULL, 5 first_name VARCHAR(14) NOT NULL, 6 last_name VARCHAR(16) NOT NULL, 7 gender CHAR(1) NOT NULL, 8 hire_date DATE NOT NULL, 9 PRIMARY KEY (emp_no)); 10 11 #這個是行註釋,對於data類型的數據格式是yyyy-m-d的形式,年月日都不能少否則會顯示出錯 12 INSERTINTO employees(emp_no,birth_date,first_name,last_name,gender,hire_date)VALUES 13 (12,‘1992-3-12‘,‘a‘,‘ab‘,‘m‘,‘1980-2-3‘),#表的順序會嚴格按照emp_no的大小排序 14 (10,‘1992-3-23‘,‘a‘,‘aa‘,‘m‘,‘1985-12-8‘), 15 (15,‘1992-2-12-1‘,‘a‘,‘ad‘,‘m‘,‘1995-3-8‘) 16 17 #好多時候懶得修改了直接刪除表然後重建就行了 18 DROP TABLE employees 19 20 #查詢語句21 SELECT * FROM employees ORDER BY hire_date DESC LIMIT 1; 22 #這個語句有問題在於只找到了一條記錄,有可能當天會有好多人入職 23 24 #從表的日期中挑選出最大的就可以避免上述問題了 25 SELECT * FROM employees WHERE 26 hire_date=(SELECT MAX(hire_date) FROM employees)
SQL基礎練習