SQL 20

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/SQL] Lv 4. ์ €์ž ๋ณ„ ์นดํ…Œ๊ณ ๋ฆฌ ๋ณ„ ๋งค์ถœ์•ก ์ง‘๊ณ„ํ•˜๊ธฐ (MySQL)

โญ ๋ฌธ์ œ ๋งํฌ https://school.programmers.co.kr/learn/courses/30/lessons/144856 ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”. programmers.co.kr โญ ํ’€์ด ์ฝ”๋“œ SELECT B.AUTHOR_ID, AUTHOR_NAME, CATEGORY, (SUM(SALES*PRICE)) AS TOTAL_SALES FROM BOOK B JOIN AUTHOR A ON B.AUTHOR_ID = A.AUTHOR_ID JOIN BOOK_SALES S ON B.BOOK_ID = S.BOOK_ID WHERE DATE_FORMAT(SALES_DATE, "..

SQL/Programmers 2023.05.09

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/SQL] Lv 3. ๋Œ€์—ฌ ํšŸ์ˆ˜๊ฐ€ ๋งŽ์€ ์ž๋™์ฐจ๋“ค์˜ ์›”๋ณ„ ๋Œ€์—ฌ ํšŸ์ˆ˜ ๊ตฌํ•˜๊ธฐ

โญ ๋ฌธ์ œ ๋งํฌ https://school.programmers.co.kr/learn/courses/30/lessons/151139 ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”. programmers.co.kr โญ ํ’€์ด ์ฝ”๋“œ SELECT MONTH(START_DATE) AS MONTH, CAR_ID, COUNT(CAR_ID) AS RECORDS FROM CAR_RENTAL_COMPANY_RENTAL_HISTORY WHERE CAR_ID IN (SELECT CAR_ID FROM CAR_RENTAL_COMPANY_RENTAL_HISTORY WHERE START_DATE BETWEEN '202..

SQL/Programmers 2023.05.08

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/SQL] Lv 4. ์‹ํ’ˆ๋ถ„๋ฅ˜๋ณ„ ๊ฐ€์žฅ ๋น„์‹ผ ์‹ํ’ˆ์˜ ์ •๋ณด ์กฐํšŒํ•˜๊ธฐ (MySQL)

โญ ๋ฌธ์ œ ๋งํฌ https://school.programmers.co.kr/learn/courses/30/lessons/131116 ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”. programmers.co.kr โญ ํ’€์ด ์ฝ”๋“œ SELECT CATEGORY, PRICE AS MAX_PRICE, PRODUCT_NAME FROM FOOD_PRODUCT WHERE CATEGORY IN ('๊ณผ์ž', '๊ตญ', '๊น€์น˜', '์‹์šฉ์œ ') AND PRICE IN (SELECT MAX(PRICE) FROM FOOD_PRODUCT GROUP BY CATEGORY) ORDER BY MAX_PRICE DESC ์ตœ๋Œ€..

SQL/Programmers 2023.05.08

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/SQL] Lv 3. ์ž๋™์ฐจ ๋Œ€์—ฌ ๊ธฐ๋ก์—์„œ ๋Œ€์—ฌ์ค‘ / ๋Œ€์—ฌ ๊ฐ€๋Šฅ ์—ฌ๋ถ€ ๊ตฌ๋ถ„ํ•˜๊ธฐ (MySQL)

โญ ๋ฌธ์ œ ๋งํฌ https://school.programmers.co.kr/learn/courses/30/lessons/157340 ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”. programmers.co.kr โญ ํ’€์ด ์ฝ”๋“œ SELECT CAR_ID, CASE WHEN CAR_ID IN ( SELECT CAR_ID FROM CAR_RENTAL_COMPANY_RENTAL_HISTORY WHERE "2022-10-16" BETWEEN START_DATE AND END_DATE ) THEN "๋Œ€์—ฌ์ค‘" ELSE "๋Œ€์—ฌ ๊ฐ€๋Šฅ" END AS AVAILABILITY FROM CAR_RENTAL_COM..

SQL/Programmers 2023.04.29

[SQL] CASE๋ฌธ ์‚ฌ์šฉ๋ฒ• (CASE/WHEN/THEN/ELSE/END)

๐Ÿ“ข CASE๋ฌธ์€ ์กฐ๊ฑด๋ฌธ์œผ๋กœ ์‚ฌ์šฉ ๊ฐ€๋Šฅ WHEN : ์กฐ๊ฑด THEN : ํ•ด๋‹น ์กฐ๊ฑด์ด TRUE๋ฉด ์‹คํ–‰ ELSE : ํ•ด๋‹น ์กฐ๊ฑด์ด FALSE๋ฉด ์‹คํ–‰ โœ… CASE๋ฌธ ๊ตฌ์กฐ CASE WHEN ์กฐ๊ฑด1 THEN ๊ฒฐ๊ณผ1 WHEN ์กฐ๊ฑด2 THEN ๊ฒฐ๊ณผ2 ... WHEN ์กฐ๊ฑดn THEN ๊ฒฐ๊ณผn ELSE ๊ฒฐ๊ณผ END โœ… CASE๋ฌธ ์‚ฌ์šฉ SELECT CASE WHEN EMPNO = 1000 THEN 'A' WHEN EMPNO = 1001 THEN 'B' ELSE 'C' END FROM EMP; EMPNO๊ฐ€ 1000์ด๋ฉด "A"๋ฅผ ์ถœ๋ ฅํ•˜๊ณ  1001์ด๋ฉด "B"๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค. ๋งŒ์•ฝ ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด "C"๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค. โœ… CASE๋ฌธ ์˜ˆ์ œ [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/SQL] Lv 3. ์ž๋™์ฐจ ๋Œ€์—ฌ ๊ธฐ๋ก์—์„œ ๋Œ€์—ฌ์ค‘ / ๋Œ€์—ฌ ๊ฐ€๋Šฅ ์—ฌ๋ถ€ ๊ตฌ๋ถ„ํ•˜๊ธฐ (MySQL) ..

SQL/Tips ! 2023.04.29

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/SQL] Lv 2. ์ค‘๋ณต ์ œ๊ฑฐํ•˜๊ธฐ (MySQL)

โญ ๋ฌธ์ œ ๋งํฌ https://school.programmers.co.kr/learn/courses/30/lessons/59408 ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”. programmers.co.kr โญ ํ’€์ด ์ฝ”๋“œ SELECT COUNT(DISTINCT(NAME)) AS count FROM ANIMAL_INS

SQL/Programmers 2023.04.23

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/SQL] Lv 2. ๊ฐ€๊ฒฉ์ด ์ œ์ผ ๋น„์‹ผ ์‹ํ’ˆ์˜ ์ •๋ณด ์ถœ๋ ฅํ•˜๊ธฐ (MySQL)

โญ ๋ฌธ์ œ ๋งํฌ https://school.programmers.co.kr/learn/courses/30/lessons/131115 ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”. programmers.co.kr โญ ํ’€์ด ์ฝ”๋“œ SELECT * FROM FOOD_PRODUCT WHERE PRICE = (SELECT MAX(PRICE) FROM FOOD_PRODUCT)

SQL/Programmers 2023.04.23

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/SQL] Lv 1. ์—ญ์ˆœ ์ •๋ ฌํ•˜๊ธฐ (MySQL)

โญ ๋ฌธ์ œ ๋งํฌ https://school.programmers.co.kr/learn/courses/30/lessons/59035 ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”. programmers.co.kr โญ ํ’€์ด ์ฝ”๋“œ SELECT NAME, DATETIME FROM ANIMAL_INS ORDER BY ANIMAL_ID DESC

SQL/Programmers 2023.04.21

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/SQL] Lv 4. ์˜คํ”„๋ผ์ธ/์˜จ๋ผ์ธ ํŒ๋งค ๋ฐ์ดํ„ฐ ํ†ตํ•ฉํ•˜๊ธฐ (MySQL)

โญ ๋ฌธ์ œ ๋งํฌ https://school.programmers.co.kr/learn/courses/30/lessons/131537 ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”. programmers.co.kr โญ ํ’€์ด ์ฝ”๋“œ (SELECT DATE_FORMAT(SALES_DATE, "%Y-%m-%d") AS SALES_DATE, PRODUCT_ID, USER_ID, SALES_AMOUNT FROM ONLINE_SALE WHERE YEAR(SALES_DATE)=2022 AND MONTH(SALES_DATE)=3) UNION (SELECT DATE_FORMAT(SALES_DATE, "%Y-%..

SQL/Programmers 2023.04.21

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/SQL] Lv 2. ์žฌ๊ตฌ๋งค๊ฐ€ ์ผ์–ด๋‚œ ์ƒํ’ˆ๊ณผ ํšŒ์› ๋ฆฌ์ŠคํŠธ ๊ตฌํ•˜๊ธฐ (MySQL)

โญ ๋ฌธ์ œ ๋งํฌ https://school.programmers.co.kr/learn/courses/30/lessons/131536 ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”. programmers.co.kr โญ ํ’€์ด ์ฝ”๋“œ SELECT USER_ID, PRODUCT_ID FROM ONLINE_SALE GROUP BY USER_ID, PRODUCT_ID HAVING COUNT(PRODUCT_ID) >= 2 ORDER BY USER_ID ASC, PRODUCT_ID DESC

SQL/Programmers 2023.04.21