๐Ÿงพ[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ์žฌ๊ตฌ๋งค๊ฐ€ ์ผ์–ด๋‚œ ์ƒํ’ˆ๊ณผ ํšŒ์› ๋ฆฌ์ŠคํŠธ ๊ตฌํ•˜๊ธฐ

Chobbyยท2022๋…„ 12์›” 16์ผ
1

SQL

๋ชฉ๋ก ๋ณด๊ธฐ
32/41

๐Ÿงก๋ฌธ์ œ ์„ค๋ช…

๋‹ค์Œ์€ ์–ด๋Š ์˜๋ฅ˜ ์‡ผํ•‘๋ชฐ์˜ ์˜จ๋ผ์ธ ์ƒํ’ˆ ํŒ๋งค ์ •๋ณด๋ฅผ ๋‹ด์€ ONLINE_SALE ํ…Œ์ด๋ธ” ์ž…๋‹ˆ๋‹ค. ONLINE_SALE ํ…Œ์ด๋ธ”์€ ์•„๋ž˜์™€ ๊ฐ™์€ ๊ตฌ์กฐ๋กœ ๋˜์–ด์žˆ์œผ๋ฉฐ ONLINE_SALE_ID, USER_ID, PRODUCT_ID, SALES_AMOUNT, SALES_DATE๋Š” ๊ฐ๊ฐ ์˜จ๋ผ์ธ ์ƒํ’ˆ ํŒ๋งค ID, ํšŒ์› ID, ์ƒํ’ˆ ID, ํŒ๋งค๋Ÿ‰, ํŒ๋งค์ผ์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.

Column nameTypeNullable
ONLINE_SALE_IDINTEGERFALSE
USER_IDINTEGERFALSE
PRODUCT_IDINTEGERFALSE
SALES_AMOUNTINTEGERFALSE
SALES_DATEDATEFALSE

๋™์ผํ•œ ๋‚ ์งœ, ํšŒ์› ID, ์ƒํ’ˆ ID ์กฐํ•ฉ์— ๋Œ€ํ•ด์„œ๋Š” ํ•˜๋‚˜์˜ ํŒ๋งค ๋ฐ์ดํ„ฐ๋งŒ ์กด์žฌํ•ฉ๋‹ˆ๋‹ค.


๐Ÿ’›๋ฌธ์ œ

ONLINE_SALE ํ…Œ์ด๋ธ”์—์„œ ๋™์ผํ•œ ํšŒ์›์ด ๋™์ผํ•œ ์ƒํ’ˆ์„ ์žฌ๊ตฌ๋งคํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ๊ตฌํ•˜์—ฌ, ์žฌ๊ตฌ๋งคํ•œ ํšŒ์› ID์™€ ์žฌ๊ตฌ๋งคํ•œ ์ƒํ’ˆ ID๋ฅผ ์ถœ๋ ฅํ•˜๋Š” SQL๋ฌธ์„ ์ž‘์„ฑํ•ด์ฃผ์„ธ์š”. ๊ฒฐ๊ณผ๋Š” ํšŒ์› ID๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌํ•ด์ฃผ์‹œ๊ณ  ํšŒ์› ID๊ฐ€ ๊ฐ™๋‹ค๋ฉด ์ƒํ’ˆ ID๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋‚ด๋ฆผ์ฐจ์ˆœ ์ •๋ ฌํ•ด์ฃผ์„ธ์š”.


๐Ÿ’š์˜ˆ์‹œ

์˜ˆ๋ฅผ ๋“ค์–ด ONLINE_SALE ํ…Œ์ด๋ธ”์ด ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค๋ฉด

ONLINE_SALE_IDUSER_IDPRODUCT_IDSALES_AMOUNTSALES_DATE
11322022-02-25
21412022-03-01
42422022-03-12
31332022-03-31
53512022-04-03
62412022-04-06
21422022-05-11

USER_ID ๊ฐ€ 1์ธ ์œ ์ €๊ฐ€ PRODUCT_ID ๊ฐ€ 3, 4์ธ ์ƒํ’ˆ๋“ค์„ ์žฌ๊ตฌ๋งคํ•˜๊ณ , USER_ID ๊ฐ€ 2์ธ ์œ ์ €๊ฐ€ PRODUCT_ID ๊ฐ€ 4์ธ ์ƒํ’ˆ์„ ์žฌ๊ตฌ๋งค ํ•˜์˜€์œผ๋ฏ€๋กœ, ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๊ฒฐ๊ณผ๊ฐ€ ๋‚˜์™€์•ผํ•ฉ๋‹ˆ๋‹ค.

USER_ID
1
1
2

๐Ÿ’™๋‚˜์˜ ํ’€์ด

SELECT USER_ID, PRODUCT_ID
FROM ONLINE_SALE
GROUP BY USER_ID, PRODUCT_ID
HAVING COUNT(*) > 1
ORDER BY USER_ID, PRODUCT_ID DESC
;
profile
๋‚ด ์ง€์‹์„ ๊ณต์œ ํ•  ์ˆ˜ ์žˆ๋Š” ๋Œ€๋‹ดํ•จ

0๊ฐœ์˜ ๋Œ“๊ธ€