๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/SQL

(6)
ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค SQL๋ฌธ LV. 3 (2) *Oracle ๊ธฐ์ค€ 8. ์ฆ๊ฒจ์ฐพ๊ธฐ๊ฐ€ ๊ฐ€์žฅ ๋งŽ์€ ์‹๋‹น ์ •๋ณด ์ถœ๋ ฅํ•˜๊ธฐ ( https://school.programmers.co.kr/learn/courses/30/lessons/131123 ) REST_INFO ํ…Œ์ด๋ธ”์—์„œ ์Œ์‹์ข…๋ฅ˜๋ณ„๋กœ ์ฆ๊ฒจ์ฐพ๊ธฐ์ˆ˜๊ฐ€ ๊ฐ€์žฅ ๋งŽ์€ ์‹๋‹น์˜ ์Œ์‹ ์ข…๋ฅ˜, ID, ์‹๋‹น ์ด๋ฆ„, ์ฆ๊ฒจ์ฐพ๊ธฐ์ˆ˜๋ฅผ ์กฐํšŒํ•˜๋Š” SQL๋ฌธ์„ ์ž‘์„ฑํ•ด์ฃผ์„ธ์š”. ์ด๋•Œ ๊ฒฐ๊ณผ๋Š” ์Œ์‹ ์ข…๋ฅ˜๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋‚ด๋ฆผ์ฐจ์ˆœ ์ •๋ ฌํ•ด์ฃผ์„ธ์š”. ๋”๋ณด๊ธฐ SELECT F.FOOD_TYPE, R.REST_ID, R.REST_NAME, F.FAVORITES FROM ( SELECT FOOD_TYPE, MAX(FAVORITES) AS FAVORITES FROM REST_INFO GROUP BY FOOD_TYPE ) F, REST_INFO R WHERE F.FOOD..
ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค SQL๋ฌธ LV. 3 (1) *Oracle ๊ธฐ์ค€, ์ •๋‹ต๋ฅ  ๋†’์€ ์ˆœ์œผ๋กœ 14๋ฌธ์ œ ์ค‘ ์ƒ์œ„ 7๋ฌธ์ œ๋งŒ 1. ์˜ค๋žœ ๊ธฐ๊ฐ„ ๋ณดํ˜ธํ•œ ๋™๋ฌผ(1) ( https://school.programmers.co.kr/learn/courses/30/lessons/59044 ) ์•„์ง ์ž…์–‘์„ ๋ชป ๊ฐ„ ๋™๋ฌผ ์ค‘, ๊ฐ€์žฅ ์˜ค๋ž˜ ๋ณดํ˜ธ์†Œ์— ์žˆ์—ˆ๋˜ ๋™๋ฌผ 3๋งˆ๋ฆฌ์˜ ์ด๋ฆ„๊ณผ ๋ณดํ˜ธ ์‹œ์ž‘์ผ์„ ์กฐํšŒํ•˜๋Š” SQL๋ฌธ์„ ์ž‘์„ฑํ•ด์ฃผ์„ธ์š”. ์ด๋•Œ ๊ฒฐ๊ณผ๋Š” ๋ณดํ˜ธ ์‹œ์ž‘์ผ ์ˆœ์œผ๋กœ ์กฐํšŒํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋”๋ณด๊ธฐ SELECT I.NAME, I.DATETIME FROM ANIMAL_INS I LEFT JOIN ANIMAL_OUTS O ON I.ANIMAL_ID = O.ANIMAL_ID WHERE O.ANIMAL_ID IS NULL ORDER BY I.DATETIME FETCH FIRST 3 ROWS ONLY; - ..
ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค SQL๋ฌธ LV. 2 (2) *Oracle ๊ธฐ์ค€ 13. ์ง„๋ฃŒ๊ณผ๋ณ„ ์ด ์˜ˆ์•ฝ ํšŸ์ˆ˜ ์ถœ๋ ฅํ•˜๊ธฐ ( https://school.programmers.co.kr/learn/courses/30/lessons/132202 ) APPOINTMENT ํ…Œ์ด๋ธ”์—์„œ 2022๋…„ 5์›”์— ์˜ˆ์•ฝํ•œ ํ™˜์ž ์ˆ˜๋ฅผ ์ง„๋ฃŒ๊ณผ์ฝ”๋“œ ๋ณ„๋กœ ์กฐํšŒํ•˜๋Š” SQL๋ฌธ์„ ์ž‘์„ฑํ•ด์ฃผ์„ธ์š”. ์ด๋•Œ, ์ปฌ๋Ÿผ๋ช…์€ '์ง„๋ฃŒ๊ณผ ์ฝ”๋“œ', '5์›”์˜ˆ์•ฝ๊ฑด์ˆ˜'๋กœ ์ง€์ •ํ•ด์ฃผ์‹œ๊ณ  ๊ฒฐ๊ณผ๋Š” ์ง„๋ฃŒ๊ณผ๋ณ„ ์˜ˆ์•ฝํ•œ ํ™˜์ž ์ˆ˜๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌํ•˜๊ณ , ์˜ˆ์•ฝํ•œ ํ™˜์ž ์ˆ˜๊ฐ€ ๊ฐ™๋‹ค๋ฉด ์ง„๋ฃŒ๊ณผ ์ฝ”๋“œ๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌํ•ด์ฃผ์„ธ์š”. ๋”๋ณด๊ธฐ SELECT MCDP_CD AS "์ง„๋ฃŒ๊ณผ ์ฝ”๋“œ", COUNT(*) AS "5์›”์˜ˆ์•ฝ๊ฑด์ˆ˜" FROM APPOINTMENT WHERE TO_CHAR(APNT_YMD, 'YYYY-MM') = '2022-05' GR..
ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค SQL๋ฌธ LV. 2 (1) *Oracle ๊ธฐ์ค€, ์ •๋‹ต๋ฅ  ๋†’์€ ์ˆœ์œผ๋กœ 23๋ฌธ์ œ ์ค‘ ์ƒ์œ„ 12๋ฌธ์ œ๋งŒ 1. ๋™๋ฌผ ์ˆ˜ ๊ตฌํ•˜๊ธฐ ( https://school.programmers.co.kr/learn/courses/30/lessons/59406 ) ๋™๋ฌผ ๋ณดํ˜ธ์†Œ์— ๋™๋ฌผ์ด ๋ช‡ ๋งˆ๋ฆฌ ๋“ค์–ด์™”๋Š”์ง€ ์กฐํšŒํ•˜๋Š” SQL ๋ฌธ์„ ์ž‘์„ฑํ•ด์ฃผ์„ธ์š”. ๋”๋ณด๊ธฐ SELECT COUNT(*) FROM ANIMAL_INS; 2. ์ตœ์†Ÿ๊ฐ’ ๊ตฌํ•˜๊ธฐ ( https://school.programmers.co.kr/learn/courses/30/lessons/59038 ) ๋™๋ฌผ ๋ณดํ˜ธ์†Œ์— ๊ฐ€์žฅ ๋จผ์ € ๋“ค์–ด์˜จ ๋™๋ฌผ์€ ์–ธ์ œ ๋“ค์–ด์™”๋Š”์ง€ ์กฐํšŒํ•˜๋Š” SQL ๋ฌธ์„ ์ž‘์„ฑํ•ด์ฃผ์„ธ์š”. ๋”๋ณด๊ธฐ SELECT MIN(DATETIME) FROM ANIMAL_INS; 3. ์ค‘๋ณต ์ œ๊ฑฐํ•˜๊ธฐ ( https://school..
ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค SQL๋ฌธ LV. 1 (2) *Oracle ๊ธฐ์ค€ ํ’€์ด 13. ์กฐ๊ฑด์— ๋งž๋Š” ํšŒ์›์ˆ˜ ๊ตฌํ•˜๊ธฐ ( https://school.programmers.co.kr/learn/courses/30/lessons/131535 ) USER_INFO ํ…Œ์ด๋ธ”์—์„œ 2021๋…„์— ๊ฐ€์ž…ํ•œ ํšŒ์› ์ค‘ ๋‚˜์ด๊ฐ€ 20์„ธ ์ด์ƒ 29์„ธ ์ดํ•˜์ธ ํšŒ์›์ด ๋ช‡ ๋ช…์ธ์ง€ ์ถœ๋ ฅํ•˜๋Š” SQL๋ฌธ์„ ์ž‘์„ฑํ•ด์ฃผ์„ธ์š”. ๋”๋ณด๊ธฐ SELECT COUNT(*) AS USERS FROM USER_INFO WHERE AGE>=20 AND AGE=29 THEN '์žฅ๊ธฐ ๋Œ€์—ฌ' ELSE '๋‹จ๊ธฐ ๋Œ€์—ฌ' END AS 'RENT_TYPE' FROM CAR_RENTAL_COMPANY_RENTAL_HISTORY WHERE TO_CHAR(START_DATE, 'YYYY-MM') = '2022-09' ORDER BY HISTO..
ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค SQL๋ฌธ LV. 1 (1) *Oracle ๊ธฐ์ค€์œผ๋กœ ์ •๋‹ต๋ฅ  ๋†’์€ ์ˆœ์œผ๋กœ 24๋ฌธ์ œ ์ค‘ ์ƒ์œ„ 12๋ฌธ์ œ๋งŒ 1. ์•„ํ”ˆ ๋™๋ฌผ ์ฐพ๊ธฐ ( https://school.programmers.co.kr/learn/courses/30/lessons/59036 ) ๋™๋ฌผ ๋ณดํ˜ธ์†Œ์— ๋“ค์–ด์˜จ ๋™๋ฌผ ์ค‘ ์•„ํ”ˆ ๋™๋ฌผ1์˜ ์•„์ด๋””์™€ ์ด๋ฆ„์„ ์กฐํšŒํ•˜๋Š” SQL ๋ฌธ์„ ์ž‘์„ฑํ•ด์ฃผ์„ธ์š”. ์ด๋•Œ ๊ฒฐ๊ณผ๋Š” ์•„์ด๋”” ์ˆœ์œผ๋กœ ์กฐํšŒํ•ด์ฃผ์„ธ์š”. ๋”๋ณด๊ธฐ SELECT ANIMAL_ID, NAME FROM ANIMAL_INS WHERE INTAKE_CONDITION = 'Sick'; 2. ์—ญ์ˆœ ์ •๋ ฌํ•˜๊ธฐ ( https://school.programmers.co.kr/learn/courses/30/lessons/59035 ) ๋™๋ฌผ ๋ณดํ˜ธ์†Œ์— ๋“ค์–ด์˜จ ๋ชจ๋“  ๋™๋ฌผ์˜ ์ด๋ฆ„๊ณผ ๋ณดํ˜ธ ์‹œ์ž‘์ผ์„ ์กฐํšŒํ•˜๋Š” SQL๋ฌธ์„ ์ž‘์„ฑํ•ด์ฃผ..