資料庫SQL實戰 —— 獲取所有員工當前的manager
阿新 • • 發佈:2018-12-16
時間限制:1秒 空間限制:32768K
題目描述
獲取所有員工當前的manager,如果當前的manager是自己的話結果不顯示,當前表示to_date='9999-01-01'。 結果第一列給出當前員工的emp_no,第二列給出其manager對應的manager_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 `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`));
輸入描述:
無
輸出描述:
emp_no | manager_no |
---|---|
10001 | 10002 |
10003 | 10004 |
10009 | 10010 |
輸入
無
輸出
無
我的程式碼
執行時間:19ms 佔用記憶體:3408k
SELECT dept_emp.emp_no, dept_manager.emp_no AS manager_no FROM dept_emp, dept_manager WHERE DATE(dept_manager.to_date) = '9999-01-01' AND dept_emp.dept_no = dept_manager.dept_no AND dept_emp.emp_no != dept_manager.emp_no;