1. 程式人生 > >牛客:資料庫實戰—2—查詢各個部門當前(to_date='9999-01-01')領導當前薪水詳情以及其對應部門編號dept_no

牛客:資料庫實戰—2—查詢各個部門當前(to_date='9999-01-01')領導當前薪水詳情以及其對應部門編號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`));
SELECT s.emp_no,s.salary,s.from_date,s.to_date,dm.dept_no FROM
  salaries s,dept_manager dm WHERE
  s.to_date='9999-01-01' AND
  dm.to_date='9999-01-01' AND 
  dm.emp_no = s.emp_no;

做這個題目真是折騰,salaries是主表,dept_manager 是從表,

問題是在於dep_manager為主表的時候,會出現對應的salaries相應的列有null的情況。

因此From後面跟上順序不能錯。