[TIL #44] 44์ผ์ฐจ ์˜ค๋Š˜์˜ ๊ณต๋ถ€ (2023.04.24 ์›”)

2023. 4. 24. 23:31ใ†Today I Learned

TIL 2023.04.24 ๐Ÿฃ

์˜ค๋Š˜ ๊ณต๋ถ€ํ•œ ๋‚ด์šฉ ๐Ÿ‘ฉ๐Ÿปโ€๐Ÿ’ป

SQL

- ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค SQL ๊ณ ๋“์  kit๋ฅผ ๋“œ๋””์–ด ๋‹ค ํ’€์—ˆ๋‹ค~!

์•Œ๊ณ ๋ฆฌ์ฆ˜

- ์ตœ๋Œ€๊ณต์•ฝ์ˆ˜/์ตœ์†Œ๊ณต๋ฐฐ์ˆ˜ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ๋งค๋ฒˆ ๊นŒ๋จน์–ด์„œ ๊ฒฐ๊ตญ ํฌ์ŠคํŒ…์œผ๋กœ ์ •๋ฆฌํ–ˆ๋‹ค! ์ด์   ์•ˆ ๊นŒ๋จน๊ฒ ์ง€..!

2023.04.24 - [์•Œ๊ณ ๋ฆฌ์ฆ˜] - [Python] ์ตœ๋Œ€๊ณต์•ฝ์ˆ˜์™€ ์ตœ์†Œ๊ณต๋ฐฐ์ˆ˜ - ์œ ํด๋ฆฌ๋“œ ํ˜ธ์ œ๋ฒ•

[Python] ์ตœ๋Œ€๊ณต์•ฝ์ˆ˜์™€ ์ตœ์†Œ๊ณต๋ฐฐ์ˆ˜ - ์œ ํด๋ฆฌ๋“œ ํ˜ธ์ œ๋ฒ•

์œ ํด๋ฆฌ๋“œ ํ˜ธ์ œ๋ฒ• ์ตœ๋Œ€๊ณต์•ฝ์ˆ˜ ๊ตฌํ•˜๊ธฐ 2๊ฐœ์˜ ์ž์—ฐ์ˆ˜ a, b์— ๋Œ€ํ•ด์„œ a๋ฅผ b๋กœ ๋‚˜๋ˆˆ ๋‚˜๋จธ์ง€๋ฅผ r์ด๋ผ ํ•˜๋ฉด(๋‹จ, a>b), a์™€ b์˜ ์ตœ๋Œ€๊ณต์•ฝ์ˆ˜๋Š” b์™€ r์˜ ์ตœ๋Œ€๊ณต์•ฝ์ˆ˜์™€ ๊ฐ™๋‹ค. ์˜ˆ์‹œ a=72, b=30์ผ ๋•Œ, ์ตœ๋Œ€๊ณต์•ฝ์ˆ˜๋Š” 6์ด

devum.tistory.com

 

React

- ๋น„๋กœ์†Œ ์ตœ์ ํ™”๊นŒ์ง€ ์™„๋ฃŒ.... ์„น์…˜ 6 ๋‹ค ๋“ฃ๋Š”๋ฐ๊นŒ์ง€ 2๊ฐ• ๋‚จ์•˜๋‹ค.... ํœด! ์„น์…˜ 7์ด ์–‘์ด ๋ฐฉ๋Œ€ํ•˜๋˜๋ฐ! ์•„์ฃผ ๊ฑฑ์ •!
- ๊ฐ•์˜ ๋“ค์œผ๋ฉด์„œ ์‹ค์Šตํ•˜๋ฉด์„œ ํฌ์ŠคํŒ…๊นŒ์ง€ ํ•˜๋ ค๋‹ˆ๊นŒ ์งง์€ ๊ฐ•์˜ ํ•˜๋‚˜ ๋“ฃ๋Š”๋ฐ๋„ ๊ฝค ์˜ค๋ž˜ ์‹œ๊ฐ„์ด ์†Œ์š”๋œ๋‹ค... ๊ทผ๋ฐ ๊ทธ๋ ‡๋‹ค๊ณ  ํฌ์ŠคํŒ…์„ ํฌ๊ธฐํ•˜๊ธฐ๋„ ์‰ฝ์ง€ ์•Š๋‹ค..! ๊ทธ๋ƒฅ ์ฒœ์ฒœํžˆ ์—ด์‹ฌํžˆ ํ•ด๋ณด๋Š”๊ฑธ๋กœ..!
2023.04.24 - [๊ฐœ๋ฐœ๊ณต๋ถ€ ๊ธฐ๊ฐ•์žก์ž/React | JavaScript | NodeJS] - [React] ์ตœ์ ํ™” : useCallback

[React] ์ตœ์ ํ™” : useCallback

์ด์ •ํ™˜ ๊ฐ•์‚ฌ๋‹˜์˜ ๊ฐ•์˜ 'ํ•œ์ž… ํฌ๊ธฐ๋กœ ์ž˜๋ผ๋จน๋Š” ๋ฆฌ์•กํŠธ'๋ฅผ ์ˆ˜๊ฐ•ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. Udemy์—์„œ ์ง„ํ–‰ํ•˜๊ณ  ์žˆ๋Š” ๋ฆฌ์•กํŠธ ์ฑŒ๋ฆฐ์ง€์— ์ฐธ์—ฌํ•˜๋ฉฐ 3์ฃผ์ฐจ ๋ฏธ์…˜์œผ๋กœ "์„น์…˜ 6 React ๊ธฐ๋ณธ - ์ผ๊ธฐ์žฅ ๋งŒ๋“ค์–ด๋ณด๊ธฐ"์„ ์ˆ˜๊ฐ•ํ•œ

devum.tistory.com

 

์–ด๋ ค์› ๋˜ ๋‚ด์šฉ ๐Ÿ˜ต

- ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค SQL ๊ณ ๋“์  kit > JOIN 5๋‹จ๊ณ„ ๋ฌธ์ œ '์ƒํ’ˆ์„ ๊ตฌ๋งคํ•œ ํšŒ์›๋น„์œจ ๊ตฌํ•˜๊ธฐ'๋ฌธ์ œ๊ฐ€ ์–ด๋ ค์› ๋‹ค.

SELECT YEAR(SALES_DATE) YEAR
    , MONTH(SALES_DATE) MONTH
    , COUNT(DISTINCT OS.USER_ID) PUCHASED_USERS
    , ROUND(COUNT(DISTINCT OS.USER_ID) 
            / (SELECT COUNT(USER_ID) FROM USER_INFO WHERE YEAR(JOINED) = '2021'), 1) PUCHASED_RATIO
FROM ONLINE_SALE OS
INNER JOIN USER_INFO UI ON OS.USER_ID = UI.USER_ID AND YEAR(JOINED) = '2021'
GROUP BY YEAR, MONTH
ORDER BY YEAR, MONTH

๐Ÿ’ก ํ’€์ด ๊ณผ์ •
1. 2021๋…„์— ๊ฐ€์ž…ํ•œ ํšŒ์›์˜ ์ˆ˜๋ฅผ ๊ฐ€์ ธ์˜ฌ ๋•Œ, ์„œ๋ธŒ์ฟผ๋ฆฌ๋กœ COUNT๋ฅผ ๊ฐ€์ ธ์™”๋‹ค.
2. ๋…„, ์›” ๋ณ„๋กœ ์ƒํ’ˆ์„ ๊ตฌ๋งคํ•œ ํšŒ์›์˜ ์ •๋ณด๋ฅผ ๊ฐ€์ ธ์˜ค๊ธฐ ์œ„ํ•ด YEAR์™€ MONTH๋กœ GROUP BY๋ฅผ ํ•˜๊ณ 
3. ๊ทธ์ค‘์—์„œ๋„ 2021๋…„์— ๊ฐ€์ž…ํ•œ ํšŒ์›์˜ ํŒ๋งค ๋ชฉ๋ก์„ ๊ฐ€์ ธ์˜ค๊ธฐ ์œ„ํ•ด USER_ID๋กœ ONLINE_SALE๊ณผ USER_INFO ํ…Œ์ด๋ธ”์„ INNER JOIN ํ–ˆ๋‹ค.
- ๊ฐ™์€ ๋…„,์›”์— ์—ฌ๋Ÿฌ๊ฐ€์ง€์˜ ์ƒํ’ˆ์„ ๊ตฌ๋งคํ•œ ํšŒ์›์ด ์žˆ๋Š” ๊ฒฝ์šฐ๋ฅผ ๋นผ๊ธฐ ์œ„ํ•ด์„œ INNER JOIN์„ ํ†ตํ•ด ๋‘ ํ…Œ์ด๋ธ”์— ๋ชจ๋‘ ๋ ˆ์ฝ”๋“œ๊ฐ€ ์žˆ๋Š” ๊ฒฝ์šฐ์—๋งŒ COUNT ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ–ˆ๋‹ค.
 

FLOOR - ROUND ์ฐจ์ด

FLOOR(์ˆซ์ž) : ์ˆซ์ž ๋ณด๋‹ค ์ž‘์€ ์ •์ˆ˜ ์ค‘ ๊ฐ€์žฅ ์ž‘์€ ์ •์ˆ˜๋ฅผ ๊ตฌํ•จ (์†Œ์ˆซ์  ์ดํ•˜ ๋ฒ„๋ฆผ)

ROUND(์ˆซ์ž, ์ž๋ฆฟ์ˆ˜) : ์ˆซ์ž๋ฅผ ์ž๋ฆฟ์ˆ˜ + 1์—์„œ ๋ฐ˜์˜ฌ๋ฆผ

 
๊ทธ๋ฆฌ๊ณ  ADsP ๊ณต๋ถ€๋ฅผ ์‹œ์ž‘ํ–ˆ๋‹ค..! ํ•œ๋‹ฌ ๊ฐ€๋ณด์ž๊ณ ~!๐Ÿ‘Š๐Ÿป

๊ถ๊ธˆํ•œ ๋‚ด์šฉ/๋ถ€์กฑํ•œ ๋‚ด์šฉ ๐Ÿง

- ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ถ€์กฑํ•œ ๋ถ€๋ถ„์— ์ง‘์ค‘ํ•ด์„œ ๋ฌธ์ œ ํ’€์ด๋ฅผ ํ•˜๋‹ค๋ณด๋ฉด, ๊ทธ๋ž˜๋„ ์ž˜ ํ’€๋ฆฌ๋Š” ์œ ํ˜•์˜ ๋ฌธ์ œ๋ฅผ ๋˜ ์žŠ์–ด๋ฒ„๋ฆฐ๋‹ค...! ์ด๊ฑฐ ์•„์ฃผ ๋ฌธ์ œ๊ณ ๋งŒ. ๊ณต๋ถ€๋Ÿ‰ ๋ถ€์กฑ์ด๋‹ค.

๋Š๋‚€ ์  ๐Ÿฅณ