
์์ ๋ฌธ์ ์ด์ด์ ํ๊ธฐ
-- SOCCER_SQL_016-- SOCCER_SQL_016
-- ํ๊ท ํค๊ฐ ์ธ์ฒ ์ ๋์ดํฐ์คใ
-- SOCCER_SQL_017-- SOCCER_SQL_017
-- ํฌ์ง์
์ด MF ์ธ ์ ์๋ค์ ์์ํ๋ช
๋ฐ ์ ์๋ช
, ๋ฐฑ๋๋ฒ ์ถ๋ ฅ
-- ํฌ์ง์
์ด MF ์ธ ์ ์๋ค์ ์์ํ๋ช
๋ฐ ์ ์๋ช
, ๋ฐฑ๋๋ฒ ์ถ๋ ฅ
SELECT * FROM player;
SELECT
t.team_name AS ์์ํ๋ช
,
p.player_name AS ์ ์๋ช
,
p.back_no AS ๋ฐฑ๋๋ฒ,
p.position AS ํฌ์ง์
FROM player p
join team t ON p.team_id = t.team_id
WHERE p.position='MF';
-- SOCCER_SQL_018-- SOCCER_SQL_018
-- ๊ฐ์ฅ ํคํฐ ์ ์ 5 ์ถ์ถ, ์ค๋ผํด, ๋จ ํค ๊ฐ์ด ์์ผ๋ฉด ์ ์ธ
SELECT * from player;
SELECT
p.player_name AS ์ ์๋ช
,
p.back_no AS ๋ฐฑ๋๋ฒ,
p.position AS ํฌ์ง์
,
p.height AS ํค
from player p
WHERE height IS NOT NULL
ORDER BY height DESC
FETCH FIRST 5 ROWS ONLY;
-- SOCCER_SQL_019 -- SOCCER_SQL_019
-- ์ ์ ์์ ์ด ์ํ ํ์ ํ๊ท ํค๋ณด๋ค ์์ ์ ์ ์ ๋ณด ์ถ๋ ฅ-- ์ ์ ์์ ์ด ์ํ ํ์ ํ๊ท ํค๋ณด๋ค ์์ ์ ์ ์ ๋ณด ์ถ๋ ฅ
SELECT
t.team_name AS ํ๋ช
,
p.player_name AS ์ ์๋ช
,
p.back_no AS ๋ฐฑ๋๋ฒ,
p.position AS ํฌ์ง์
,
p.height AS ํค,
ROUND(sub.avg_height, 1) AS ํํ๊ท ํค
from player p
JOIN team t ON p.team_id = t.team_id
JOIN (
-- 1๋จ๊ณ: ๊ฐ ํ์ ํ๊ท ํค ๊ณ์ฐ
SELECT
team_id,
AVG(height) AS avg_height
FROM player
WHERE height IS NOT NULL
GROUP BY team_id
) sub ON p.team_id = sub.team_id
WHERE p.height < sub.avg_height
AND p.height IS NOT NULL;
-- SOCCER_SQL_020-- SOCCER_SQL_020
-- 2012๋
5์ ํ๋ฌ๊ฐ ๊ฒฝ๊ธฐ๊ฐ ์๋ ๊ฒฝ๊ธฐ์ฅ ์กฐํ-- 2012๋
5์ ํ๋ฌ๊ฐ ๊ฒฝ๊ธฐ๊ฐ ์๋ ๊ฒฝ๊ธฐ์ฅ ์กฐํ
SELECT * FROM schedule;
SELECT * FROM stadium;
SELECT DISTINCT
sch.sche_date AS ๋ ์ง,
s.stadium_name AS ๊ฒฝ๊ธฐ์ฅ
FROM stadium s
join schedule sch on sch.stadium_id = s.stadium_id
where sch.sche_date BETWEEN '2012-05-01' AND '2012-05-31';
-- SOCCER_SQL_021
-- ์ดํ ์ ์ ์์ํ์ ์ ์๋ช
๋จ ์ถ๋ ฅ
--X.PLAYER_NAME ์ ์๋ช
-- ,X.POSITION ํฌ์ง์
-- ,X.BACK_NO ๋ฐฑ๋๋ฒ
SELECT
p.player_name AS ์ ์๋ช
,
p.position AS ํฌ์ง์
,
p.back_no AS ๋ฐฑ๋๋ฒ
FROM player p
WHERE p.team_id = (
SELECT team_id
FROM player
WHERE player_name = '์ดํ'
);
-- SOCCER_SQL_022
-- ํ๋ณ ํฌ์ง์
๋ณ ์ธ์์์ ํ๋ณ ์ ์ฒด ์ธ์์ ์ถ๋ ฅ
SELECT * FROM player;
SELECT
p.team_id "ํID",
COUNT(*) AS ์ด์ธ์,
SUM(CASE WHEN p.position = 'FW' THEN 1 ELSE 0 END) AS FW,
SUM(CASE WHEN p.position = 'MF' THEN 1 ELSE 0 END) AS MF,
SUM(CASE WHEN p.position = 'DF' THEN 1 ELSE 0 END) AS DF,
SUM(CASE WHEN p.position = 'GK' THEN 1 ELSE 0 END) AS GK
FROM player p
GROUP BY p.team_id
ORDER BY p.team_id;
'Project ESG+AI > [์ผ์ KPMG]ESG ๋ฐ์ดํฐ ํ์ฉ ํ์คํ ๊ฐ๋ฐ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| 19์ผ์ฐจ. ๊ฐ๋ฐ ํ๋ก์ฐ (0) | 2025.11.04 |
|---|---|
| 18์ผ์ฐจ. (0) | 2025.11.03 |
| 16์ผ์ฐจ. (1) | 2025.10.30 |
| 15์ผ์ฐจ. SQL์ ๋ํด ์์๋ณด์ (1) | 2025.10.29 |
| 14์ผ์ฐจ. ๋์ปค, pgAdmin ์ค์นํ๊ธฐ(์ด๊ฒ ์ฐ) (0) | 2025.10.28 |