牛客SQL練習第21題
題目描述
查詢所有員工自入職以來的薪水漲幅情況,給出員工編號emp_no以及其對應的薪水漲幅growth,並按照growth進行升序
(注:可能有employees表和salaries表裡存在記錄的員工,有對應的員工編號和漲薪記錄,但是已經離職了,離職的員工salaries表的最新的to_date!=‘9999-01-01’,這樣的資料不顯示在查詢結果裡面)
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`));
解答:
查出當前工資和入職時工資,作差即為漲幅
select
e.emp_no,
s1.salary-s2.salary
from
employees e
join salaries s1 on e.emp_no=s1.emp_no and s1.to_date="9999-01-01"
join salaries s2 on e.emp_no=s2.emp_no and e.hire_date=s2.from_date
order by growth
相關文章
- Mysql 練習(牛客網)MySql
- 牛客周賽 Round 36 (小白練習記)
- nowcoder 牛客練習賽9 B
- 牛客練習賽129 A-數數
- SQL 練習題SQL
- SQL練習題SQL
- 牛客網SQL刷題31-40SQL
- 牛客網SQL刷題41-50SQL
- 猿人學內部練習平臺第21、22、24、29、34題
- oracle sql練習題OracleSQL
- 數理統計筆記[牛客專項練習]筆記
- 牛客練習賽40 B 小A與任務(貪心)
- python練習冊-第0000題Python
- 深度學習面試100題(第21-25題)深度學習面試
- 牛客網Mysql相應試題 SQL28 計算使用者8月每天的練題數量MySql
- [程式設計題]從尾到頭列印連結串列 牛客網練習 java遞迴程式設計Java遞迴
- 21 個 curl 命令練習
- python練習冊-第0002題Python
- 牛客錯題集(Java)Java
- sql查詢入門練習題SQL
- 牛客多校H題題解
- 牛客小白月賽95 (賽前的練習之我是小菜雞)
- 2024牛客暑期多校訓練營2 解題報告
- 2024牛客多校第10場
- sql 練習SQL
- 【牛客訓練記錄】2024牛客國慶集訓派對day1
- 【牛客訓練記錄】2024牛客國慶集訓派對day2
- 【牛客訓練記錄】2024牛客國慶集訓派對day3
- 牛客網Java評估題Java
- 牛客周賽 Round 66 題解
- 牛客練習賽74 E CCA的期望(算概率的技巧+floyd處理)
- pl/sql練習SQL
- pl/sql 練習SQL
- 2024牛客暑期多校訓練營2
- 2024牛客暑期多校訓練營4
- 2024牛客暑期多校訓練營5
- 2024牛客暑期多校訓練營6
- 2024牛客暑期多校訓練營1