[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] Lv2. ์นดํ…Œ๊ณ ๋ฆฌ ๋ณ„ ์ƒํ’ˆ ๊ฐœ์ˆ˜ ๊ตฌํ•˜๊ธฐ

2023. 1. 4. 14:18ใ†์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต/ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค_2023

728x90

๋ฌธ์ œ ์„ค๋ช…

๋‹ค์Œ์€ ์–ด๋Š ์˜๋ฅ˜ ์‡ผํ•‘๋ชฐ์—์„œ ํŒ๋งค์ค‘์ธ ์ƒํ’ˆ๋“ค์˜ ์ •๋ณด๋ฅผ ๋‹ด์€ PRODUCT ํ…Œ์ด๋ธ”์ž…๋‹ˆ๋‹ค. PRODUCT ํ…Œ์ด๋ธ”์€ ์•„๋ž˜์™€ ๊ฐ™์€ ๊ตฌ์กฐ๋กœ ๋˜์–ด์žˆ์œผ๋ฉฐ, PRODUCT_ID, PRODUCT_CODE, PRICE๋Š” ๊ฐ๊ฐ ์ƒํ’ˆ ID, ์ƒํ’ˆ์ฝ”๋“œ, ํŒ๋งค๊ฐ€๋ฅผ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.

 

Column name                                                                         Type                                                                      Nullable
PRODUCT_ID INTEGER FALSE
PRODUCT_CODE VARCHAR(8) FALSE
PRICE INTEGER FALSE

์ƒํ’ˆ ๋ณ„๋กœ ์ค‘๋ณต๋˜์ง€ ์•Š๋Š” 8์ž๋ฆฌ ์ƒํ’ˆ์ฝ”๋“œ ๊ฐ’์„ ๊ฐ€์ง€๋ฉฐ, ์•ž 2์ž๋ฆฌ๋Š” ์นดํ…Œ๊ณ ๋ฆฌ ์ฝ”๋“œ๋ฅผ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.


๋ฌธ์ œ

PRODUCT ํ…Œ์ด๋ธ”์—์„œ ์ƒํ’ˆ ์นดํ…Œ๊ณ ๋ฆฌ ์ฝ”๋“œ(PRODUCT_CODE ์•ž 2์ž๋ฆฌ) ๋ณ„ ์ƒํ’ˆ ๊ฐœ์ˆ˜๋ฅผ ์ถœ๋ ฅํ•˜๋Š” SQL๋ฌธ์„ ์ž‘์„ฑํ•ด์ฃผ์„ธ์š”. ๊ฒฐ๊ณผ๋Š” ์ƒํ’ˆ ์นดํ…Œ๊ณ ๋ฆฌ ์ฝ”๋“œ๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌํ•ด์ฃผ์„ธ์š”.


์˜ˆ์‹œ

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

PRODUCT_ID      PRODUCT_CODE                                                                               PRICE
1 A1000011 10000
2 A1000045 9000
3 C3000002 22000
4 C3000006 15000
5 C3000010 30000
6 K1000023 17000

์ƒํ’ˆ ์นดํ…Œ๊ณ ๋ฆฌ ์ฝ”๋“œ ๋ณ„ ์ƒํ’ˆ์€ ์•„๋ž˜์™€ ๊ฐ™์œผ๋ฏ€๋กœ,

  • A1: PRODUCT_ID๊ฐ€ 1, 2 ์ธ ์ƒํ’ˆ
  • C3: PRODUCT_ID๊ฐ€ 3, 4, 5 ์ธ ์ƒํ’ˆ
  • K1: PRODUCT_ID๊ฐ€ 6 ์ธ ์ƒํ’ˆ

๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ฒฐ๊ณผ๊ฐ€ ๋‚˜์™€์•ผ ํ•ฉ๋‹ˆ๋‹ค.

CATEGORY                                                                                                    PRODUCTS
A1 2
C3 3
K1 1

 

 

๋‚˜์˜ ํ’€์ด

๋จผ์ € SUBSTRING ์„ ํ†ตํ•ด์„œ PRODUCT_CODE์˜ ์•ž๊ธ€์ž 2๊ฐœ๋ฅผ ์ž˜๋ผ์„œ CATEGORY๋ผ๊ณ  ๋ณ„์นญ์„ ์ฃผ๊ณ , ์ด๋ฅผ ๊ทธ๋ฃนํ™” ํ•ด์คฌ๋‹ค. 

SUBSTRING(๋ฌธ์ž์—ด, ์‹œ์ž‘์œ„์น˜, ๋์œ„์น˜) ์ด๋ ‡๊ฒŒ ์ง€์ •ํ•ด์ฃผ๋ฉด ๋˜๋Š”๋ฐ ์ด๋•Œ ์‹œ์ž‘์ด 0์ด ์•„๋‹ˆ๋ผ 1์ด๋ผ๋Š” ์  ์žŠ์ง€ ๋ง๊ธฐ~_~ 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

728x90