各部門の現在のリーダーの現在の給与の詳細と対応する部門番号dept_noを検索します[3]

タイトル説明

各部門の現在の(dept_manager.to_date = '9999-01-01')リーダーの現在の(salaries.to_date = '9999-01-01')給与の詳細とそれに対応する部門番号dept_noを検索します

(注:出力結果はsalaries.emp_noの昇順でソートされます。出力結果のdept_no列が最後の列であることに注意してください)

TABLE `salaries`を作成します(
'员工编号'、` - emp_no`はint(11)NOT NULL、
`salary`のint(11)NOT NULL、
` from_date`日付NOT NULL、
日付NOT NULL、to_date` `
PRIMARY KEY( ʻemp_no`、 `from_date`));

CREATE(dept_manager` TABLE `
'部門番号' - ` dept_no` CHAR(4)NOT NULL、
`emp_no`のint(11)NOT NULL、 - '従業員番号'
` NOT NULL to_date` DATE、
PRIMARY KEY( `EMP_NO `、` dept_no`));

説明を入力してください:

番号

出力の説明:

emp_no 給料 from_date 現在まで dept_no
10002 72527 2001-08-02 9999-01-01 d001
10004 74057 2001-11-27 9999-01-01 d004
10005 94692 2001-09-09 9999-01-01 d003
10006 43311 2001-08-02 9999-01-01 d002
10010 94409 2001-11-23 9999-01-01 d006

回答: 

select s.*,d.dept_no 
from salaries as s inner join dept_manager as d
on s.emp_no=d.emp_no
where s.to_date='9999-01-01' and d.to_date='9999-01-01'

 

おすすめ

転載: blog.csdn.net/gjs935219/article/details/109187392