๐ข ๋ณธ ํฌ์คํ ์ ํ์ฉ๋๋ ๊ธฐ๋ณธ ๋ฌธ์ ๋ฐ ์๋ฃ ์ถ์ฒ๋
๋ฆฌํธ์ฝ๋ Problems, https://leetcode.com/problemset/all/์์ ๋ฐํ๋๋ค.
โ๋ฌธ์
https://leetcode.com/problems/project-employees-i/description/
Table : Project
Table : Employee
Write an SQL query that reports the average experience years of all the employees for each project, rounded to 2 digits. Return the result table in any order.
โ ํ์ด
๋ฌธ์ ์๊ตฌ์ฌํญ
๊ฐ ํ๋ก์ ํธ์ ์ฐธ์ฌํ ์ง์๋ค์ ํ๊ท ๊ฒฝ๋ ฅ ์ฐ์๋ฅผ ๋ฐ์ฌ๋ฆผํด์ ์์์ 2์๋ฆฌ๊น์ง ์ถ๋ ฅํด์ผํ๋ค.
์กฐ์ธ ๊ธฐ์ค์ Project์ Empolyee ์ ๊ณตํต์ปฌ๋ผ employee_id๋ก ํ๋
๊ธฐ์ค ํ ์ด๋ธ์ Project๋ก ํด์ค์ผ ํ๋ค.
Employee ํ ์ด๋ธ ๊ธฐ์ค์ผ๋ก ์กฐ์ธํ๊ฒ ๋๋ฉด ํ๋ก์ ํธ์ ๊ฒฝํ์ด ์๋ ์ง์์ ๋ํด Project_id null ๋ฐ์ดํฐ๊ฐ ์์ฑ๋๋ค.
ํ ์ด๋ธ ์กฐ์ธํ, project_id ๊ธฐ์ค์ผ๋ก ๊ทธ๋ฃนํํด์ ์ง์๋ค์ ๊ฒฝ๋ ฅ ์ฐ์ ํ๊ท ๊ฐ์ ๊ตฌํด์คฌ๋ค.
SELECT project_id,
ROUND(AVG(experience_years), 2) AS average_years
FROM Project T1
LEFT JOIN Employee T2
ON T1.employee_id = T2.employee_id
GROUP BY 1;
๐โ๏ธ ๋ฌธ์ ํ์ด์ mysql ์ฟผ๋ฆฌ ํจ์จ์ฑ ๋์ด๊ธฐ ๋ฑ ํฌ์คํ ์ ๋ํ ์๊ฒฌ ๋ฐ ๊ธฐ์ ์กฐ์ธ ๋๊ธ ๋ชจ๋ ํ์ํฉ๋๋ค.
'Growth ๐ณ > Practice ๐ป' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Leet code] 1084. Sales Analysis III (0) | 2023.10.10 |
---|---|
[Leet Code] 1068. Product Sales Analysis I (1) | 2023.10.07 |
[Leet code] 1934. Confirmation Rate (1) | 2023.10.05 |
[Leet code] 1393. Capital Gain/Loss (1) | 2023.10.04 |
[Leet code] 1204. Last Person to Fit in the Bus (0) | 2023.09.26 |