having 5

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค | SQL] ๋™๋ช… ๋™๋ฌผ ์ˆ˜ ์ฐพ๊ธฐ

SQL ๊ณ ๋“์  Kit > GROUP BY > ๋™๋ช… ๋™๋ฌผ ์ˆ˜ ์ฐพ๊ธฐ  ๋™๋ช… ๋™๋ฌผ ์ˆ˜ ์ฐพ๊ธฐ Lv.2๋™๋ฌผ ๋ณดํ˜ธ์†Œ์— ๋“ค์–ด์˜จ ๋™๋ฌผ ์ด๋ฆ„ ์ค‘ ๋‘ ๋ฒˆ ์ด์ƒ ์“ฐ์ธ ์ด๋ฆ„๊ณผ ํ•ด๋‹น ์ด๋ฆ„์ด ์“ฐ์ธ ํšŸ์ˆ˜๋ฅผ ์กฐํšŒํ•˜๋Š” SQL๋ฌธ์„ ์ž‘์„ฑํ•ด์ฃผ์„ธ์š”. ์ด๋•Œ ๊ฒฐ๊ณผ๋Š” ์ด๋ฆ„์ด ์—†๋Š” ๋™๋ฌผ์€ ์ง‘๊ณ„์—์„œ ์ œ์™ธํ•˜๋ฉฐ, ๊ฒฐ๊ณผ๋Š” ์ด๋ฆ„ ์ˆœ์œผ๋กœ ์กฐํšŒํ•ด์ฃผ์„ธ์š”.   ์ฒซ ๋ฒˆ์งธ ํ’€์ด :     100์ -- ์ฝ”๋“œ๋ฅผ ์ž…๋ ฅํ•˜์„ธ์š”SELECT NAME, COUNT(*) AS COUNTFROM ANIMAL_INSGROUP BY NAMEHAVING COUNT(NAME) >= 2ORDER BY NAMEHAVING์œผ๋กœ GROUPํ™”ํ•œ NAME์˜ ์กฐ๊ฑด ๋ฐ˜์˜

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค | SQL] ๊ณ ์–‘์ด์™€ ๊ฐœ๋Š” ๋ช‡ ๋งˆ๋ฆฌ ์žˆ์„๊นŒ (GROUP BY)

SQL ๊ณ ๋“์  Kit > GROUP BY > ๊ณ ์–‘์ด์™€ ๊ฐœ๋Š” ๋ช‡ ๋งˆ๋ฆฌ ์žˆ์„๊นŒ  ๊ณ ์–‘์ด์™€ ๊ฐœ๋Š” ๋ช‡ ๋งˆ๋ฆฌ ์žˆ์„๊นŒ Lv.2๋™๋ฌผ ๋ณดํ˜ธ์†Œ์— ๋“ค์–ด์˜จ ๋™๋ฌผ ์ค‘ ๊ณ ์–‘์ด์™€ ๊ฐœ๊ฐ€ ๊ฐ๊ฐ ๋ช‡ ๋งˆ๋ฆฌ์ธ์ง€ ์กฐํšŒํ•˜๋Š” SQL๋ฌธ์„ ์ž‘์„ฑํ•ด์ฃผ์„ธ์š”. ์ด๋•Œ ๊ณ ์–‘์ด๋ฅผ ๊ฐœ๋ณด๋‹ค ๋จผ์ € ์กฐํšŒํ•ด์ฃผ์„ธ์š”.   ์ฒซ ๋ฒˆ์งธ ํ’€์ด :     100์ -- ์ฝ”๋“œ๋ฅผ ์ž…๋ ฅํ•˜์„ธ์š”SELECT ANIMAL_TYPE, COUNT(ANIMAL_ID) AS 'count'FROM ANIMAL_INSGROUP BY ANIMAL_TYPEHAVING ANIMAL_TYPE IN ('Cat', 'Dog')ORDER BY ANIMAL_TYPECAT, DOG ๋ฐ–์— ์—†์ง€๋งŒ HAVING์œผ๋กœ ํ™•์‹คํžˆ ํ•ด๋‘ ORDER BY๋กœ ์ •๋ ฌํ•  ํ•„์š”๊ฐ€ ์žˆ์Œ

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค | SQL] ํŠน์ • ๊ธฐ๊ฐ„๋™์•ˆ ๋Œ€์—ฌ ๊ฐ€๋Šฅํ•œ ์ž๋™์ฐจ๋“ค์˜ ๋Œ€์—ฌ๋น„์šฉ ๊ตฌํ•˜๊ธฐ (JOIN)

SQL ๊ณ ๋“์  Kit > JOIN > ํŠน์ • ๊ธฐ๊ฐ„๋™์•ˆ ๋Œ€์—ฌ ๊ฐ€๋Šฅํ•œ ์ž๋™์ฐจ๋“ค์˜ ๋Œ€์—ฌ๋น„์šฉ ๊ตฌํ•˜๊ธฐ  ํŠน์ • ๊ธฐ๊ฐ„๋™์•ˆ ๋Œ€์—ฌ ๊ฐ€๋Šฅํ•œ ์ž๋™์ฐจ๋“ค์˜ ๋Œ€์—ฌ๋น„์šฉ ๊ตฌํ•˜ Lv.4CAR_RENTAL_COMPANY_CAR ํ…Œ์ด๋ธ”๊ณผ CAR_RENTAL_COMPANY_RENTAL_HISTORY ํ…Œ์ด๋ธ”๊ณผ CAR_RENTAL_COMPANY_DISCOUNT_PLAN ํ…Œ์ด๋ธ”์—์„œ ์ž๋™์ฐจ ์ข…๋ฅ˜๊ฐ€ '์„ธ๋‹จ' ๋˜๋Š” 'SUV' ์ธ ์ž๋™์ฐจ ์ค‘ 2022๋…„ 11์›” 1์ผ๋ถ€ํ„ฐ 2022๋…„ 11์›” 30์ผ๊นŒ์ง€ ๋Œ€์—ฌ ๊ฐ€๋Šฅํ•˜๊ณ  30์ผ๊ฐ„์˜ ๋Œ€์—ฌ ๊ธˆ์•ก์ด 50๋งŒ์› ์ด์ƒ 200๋งŒ์› ๋ฏธ๋งŒ์ธ ์ž๋™์ฐจ์— ๋Œ€ํ•ด์„œ ์ž๋™์ฐจ ID, ์ž๋™์ฐจ ์ข…๋ฅ˜, ๋Œ€์—ฌ ๊ธˆ์•ก(์ปฌ๋Ÿผ๋ช…: FEE) ๋ฆฌ์ŠคํŠธ๋ฅผ ์ถœ๋ ฅํ•˜๋Š” SQL๋ฌธ์„ ์ž‘์„ฑํ•ด์ฃผ์„ธ์š”. ๊ฒฐ๊ณผ๋Š” ๋Œ€์—ฌ ๊ธˆ์•ก์„ ๊ธฐ์ค€์œผ๋กœ ๋‚ด๋ฆผ์ฐจ์ˆœ ์ •๋ ฌํ•˜๊ณ , ๋Œ€์—ฌ ๊ธˆ์•ก์ด ๊ฐ™์€ ๊ฒฝ์šฐ ์ž๋™..

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค | SQL] 5์›” ์‹ํ’ˆ๋“ค์˜ ์ด๋งค์ถœ ์กฐํšŒํ•˜๊ธฐ

์•Œ๊ณ ๋ฆฌ์ฆ˜ ๊ณ ๋“์  Kit > JOIN > 5์›” ์‹ํ’ˆ๋“ค์˜ ์ด๋งค์ถœ ์กฐํšŒํ•˜๊ธฐ  5์›” ์‹ํ’ˆ๋“ค์˜ ์ด๋งค์ถœ ์กฐํšŒํ•˜๊ธฐ Lv.4FOOD_PRODUCT์™€ FOOD_ORDER ํ…Œ์ด๋ธ”์—์„œ ์ƒ์‚ฐ์ผ์ž๊ฐ€ 2022๋…„ 5์›”์ธ ์‹ํ’ˆ๋“ค์˜ ์‹ํ’ˆ ID, ์‹ํ’ˆ ์ด๋ฆ„, ์ด๋งค์ถœ์„ ์กฐํšŒํ•˜๋Š” SQL๋ฌธ์„ ์ž‘์„ฑํ•ด์ฃผ์„ธ์š”. ์ด๋•Œ ๊ฒฐ๊ณผ๋Š” ์ด๋งค์ถœ์„ ๊ธฐ์ค€์œผ๋กœ ๋‚ด๋ฆผ์ฐจ์ˆœ ์ •๋ ฌํ•ด์ฃผ์‹œ๊ณ  ์ด๋งค์ถœ์ด ๊ฐ™๋‹ค๋ฉด ์‹ํ’ˆ ID๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌํ•ด์ฃผ์„ธ์š”.   ์ฒซ ๋ฒˆ์งธ ํ’€์ด :     100์ -- ์ฝ”๋“œ๋ฅผ ์ž…๋ ฅํ•˜์„ธ์š”SELECT B.PRODUCT_ID, A.PRODUCT_NAME, SUM(A.PRICE * B.AMOUNT) AS TOTAL_SALESFROM FOOD_PRODUCT AJOIN FOOD_ORDER BON A.PRODUCT_ID = B.PRODUCT_IDWHERE B.PRO..

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค | SQL] ์„œ์šธ์— ์œ„์น˜ํ•œ ์‹๋‹น ๋ชฉ๋ก ์ถœ๋ ฅํ•˜๊ธฐ

์•Œ๊ณ ๋ฆฌ์ฆ˜ ๊ณ ๋“์  Kit > ํƒ์š•๋ณต(Greedy) > ์„œ์šธ์— ์œ„์น˜ํ•œ ์‹๋‹น ๋ชฉ๋ก ์ถœ๋ ฅํ•˜๊ธฐ  ์„œ์šธ์— ์œ„์น˜ํ•œ ์‹๋‹น ๋ชฉ๋ก ์ถœ๋ ฅํ•˜๊ธฐ Lv.4REST_INFO์™€ REST_REVIEW ํ…Œ์ด๋ธ”์—์„œ ์„œ์šธ์— ์œ„์น˜ํ•œ ์‹๋‹น๋“ค์˜ ์‹๋‹น ID, ์‹๋‹น ์ด๋ฆ„, ์Œ์‹ ์ข…๋ฅ˜, ์ฆ๊ฒจ์ฐพ๊ธฐ์ˆ˜, ์ฃผ์†Œ, ๋ฆฌ๋ทฐ ํ‰๊ท  ์ ์ˆ˜๋ฅผ ์กฐํšŒํ•˜๋Š” SQL๋ฌธ์„ ์ž‘์„ฑํ•ด์ฃผ์„ธ์š”. ์ด๋•Œ ๋ฆฌ๋ทฐ ํ‰๊ท ์ ์ˆ˜๋Š” ์†Œ์ˆ˜์  ์„ธ ๋ฒˆ์งธ ์ž๋ฆฌ์—์„œ ๋ฐ˜์˜ฌ๋ฆผ ํ•ด์ฃผ์‹œ๊ณ  ๊ฒฐ๊ณผ๋Š” ํ‰๊ท ์ ์ˆ˜๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋‚ด๋ฆผ์ฐจ์ˆœ ์ •๋ ฌํ•ด์ฃผ์‹œ๊ณ , ํ‰๊ท ์ ์ˆ˜๊ฐ€ ๊ฐ™๋‹ค๋ฉด ์ฆ๊ฒจ์ฐพ๊ธฐ์ˆ˜๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋‚ด๋ฆผ์ฐจ์ˆœ ์ •๋ ฌํ•ด์ฃผ์„ธ์š”.   ์ฒซ ๋ฒˆ์งธ ํ’€์ด :     100์ -- ์ฝ”๋“œ๋ฅผ ์ž…๋ ฅํ•˜์„ธ์š”SELECT B.REST_ID, A.REST_NAME, A.FOOD_TYPE, A.FAVORITES, A.ADDRESS, ROUND(AVG(B.REVIEW_SCORE)..