LV5. ์์ฐ์ด ๊ฐ์ฅ ํฐ ํ๋ก์ ํธ๋?
๋ด๊ฐ ํ๋ฆฐ/๋์น ๋ถ๋ถ์ ๋ฏผํธ์์ผ๋ก ํ์!
1.
๊ฐ ์ง์์ด ์ํ ๋ถ์์์ ๊ฐ์ฅ ๋์ ์๊ธ์ ๋ฐ๋ ์ง์๋ค๋ง ํฌํจ๋ ๊ฒฐ๊ณผ๋ฅผ ์กฐํํ๋ SQL ์ฟผ๋ฆฌ๋ฅผ ์์ฑํด์ฃผ์ธ์.
a.
์ถ๋ ฅ ๊ฒฐ๊ณผ์๋ ์ง์์ ์ด๋ฆ, ๋ถ์, ๊ทธ๋ฆฌ๊ณ ์๊ธ์ด ํฌํจ๋์ด์ผ ํฉ๋๋ค.
๋์ ๋ต |
select e.Name,
e.Department, e.Salary from eemployees e left join (select Department, max(salary) max_sal from eemployees group by 1) a on e.Department=a.Department where e.Salary=a.max_sal |
์ ๋ต |
SELECT
e.Name, e.Department, e.Salary FROM Employees e WHERE e.Salary = ( SELECT MAX(Salary) FROM Employees e2 WHERE e2.Department = e.Department ); |
์ค๋ต ๋ ธํธ | where์ ์ ์๋ธ์ฟผ๋ฆฌ๋ฅผ ์์ฑํ๋ฉด ๋๋ค! |
๊ณ ๋ฏผํ ์ | ๋ถ๋ช ํ join์์ด ์๋ธ์ฟผ๋ฆฌ๋ง์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ถ์ถํ ์ ์์๋๋ฐ.. from์๋ค๊ฐ eemployees ํ ์ด๋ธ์ ์๋ถ๋ฅด๊ณ ๋ฐ๋ก ์๋ธ์ฟผ๋ฆฌ๋ฅผ ์์ฑํ๋๊น name์ด ์๋ ์ join์ผ๋ก eemployees ํ ์ด๋ธ์ ์ฐ๊ฒฐํ๋ค. |
2.
์ง์์ด ์ฐธ์ฌํ ํ๋ก์ ํธ ์ค ์์ฐ์ด 10,000 ์ด์์ธ ํ๋ก์ ํธ๋ง์ ์กฐํํ๋ SQL ์ฟผ๋ฆฌ๋ฅผ ์์ฑํด์ฃผ์ธ์.
a.
์ถ๋ ฅ ๊ฒฐ๊ณผ์๋ ์ง์ ์ด๋ฆ, ํ๋ก์ ํธ ์ด๋ฆ, ๊ทธ๋ฆฌ๊ณ ํ๋ก์ ํธ ์์ฐ์ด ํฌํจ๋์ด์ผ ํฉ๋๋ค.
๋์ ๋ต |
select e.Name, p.ProjectName, p.Budget
from employeeprojects ep join projects p on ep.projectID=p.ProjectID join eemployees e on ep.EmployeeID=e.EmployeeID where p.Budget>=10000 |
์ ๋ต |
SELECT
e.Name, p.ProjectName, p.Budget FROM Employees e JOIN EmployeeProjects ep ON e.EmployeeID = ep.EmployeeID JOIN Projects p ON ep.ProjectID = p.ProjectID WHERE p.Budget >= 10000; |
์ค๋ต ๋ ธํธ | - |
๊ณ ๋ฏผํ ์ | JOIN๋ง ์ฌ์ฉํ๋ฉด ๋ผ์ ์์ธ๋ก ์์ฃผ ๊ฐ๋จํ๋ค. |
'๋ด์ผ๋ฐฐ์์บ ํ > ์ฌ์ ์บ ํ ๊ณผ์ ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[๊ฑท๊ธฐ๋ฐ] ๋ฐ๋ณต๋ฌธ ์ฐ์ตํ๊ธฐ Part 1 (0) | 2025.02.12 |
---|---|
[๊ฑท๊ธฐ๋ฐ] Java ์์๋ณด๊ธฐ (1) | 2025.02.12 |
[๋ฌ๋ฆฌ๊ธฐ๋ฐ] SQL ๋ฌธ๋ฒ ์ฐ์ต 6 (0) | 2025.01.24 |
[๋ฌ๋ฆฌ๊ธฐ๋ฐ] SQL ๋ฌธ๋ฒ ์ฐ์ต 5 (0) | 2025.01.24 |
[๋ฌ๋ฆฌ๊ธฐ๋ฐ] SQL ๋ฌธ๋ฒ ์ฐ์ต 4 (0) | 2025.01.23 |