Growth ๐ŸŒณ/Practice ๐Ÿ’ป

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ์—†์–ด์ง„ ๊ธฐ๋ก ์ฐพ๊ธฐ(2์ฐจํ’€์ด) / ๋ฌธ์ œ ํŠน์ด์  ๋ฐœ๊ฒฌ

์ธ” 2023. 1. 14. 16:47

๐Ÿ“ข ๋ณธ ํฌ์ŠคํŒ…์€ Growth/Practice ๊ฒŒ์‹œ๊ธ€ (https://sy038680.tistory.com/132๋ฌธ์ œ์— ๋Œ€ํ•œ 2์ฐจ ํ’€์ด์ž…๋‹ˆ๋‹ค.

 

 


๊ธฐ์กด ํ’€์ด์—์„œ๋Š” JOIN์„ ์‚ฌ์šฉํ•ด์„œ ANIMAL_INS ํ…Œ์ด๋ธ”์˜ INTAKE_CONDITION์ด NULL๊ฐ’์ธ ๊ฒƒ์„ ์ถ”์ถœํ–ˆ๋Š”๋ฐ

2์ฐจ ํ’€์ด์—์„œ๋Š” JOIN์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ณ  WHERE์ ˆ์— NOT IN์„ ์‚ฌ์šฉํ•ด์„œ

INSํ…Œ์ด๋ธ”์— ์—†๋Š” ๋™๋ฌผ๋“ค ๋ฐ์ดํ„ฐ๋งŒ OUTS ํ…Œ์ด๋ธ”์—์„œ ์ถœ๋ ฅํ•ด๋ณด์•˜๋‹ค.

SELECT ANIMAL_ID, NAME
 FROM ANIMAL_OUTS
 WHERE (ANIMAL_ID, NAME) NOT IN (SELECT ANIMAL_ID, NAME FROM ANIMAL_INS)
 ORDER BY 1

 

 

์ •๋‹ต ์ธ์ •์€ ๋˜์—ˆ๋Š”๋ฐ... ๊ธฐ์กด์— ํ’€์—ˆ๋˜ ์ฟผ๋ฆฌ์™€ ๊ฒฐ๊ณผ ๋ฐ์ดํ„ฐ์ˆ˜๊ฐ€ ๋‹ค๋ฅด๋‹ค ๐Ÿค”?

 

2์ฐจ ํ’€์ด ๊ฒฐ๊ณผ๋Š” 5๊ฐœ

 

๊ธฐ์กด ํ’€์ด ๊ฒฐ๊ณผ ๋ฐ์ดํ„ฐํ–‰์€ 4๊ฐœ์˜€๋‹ค.

-- ๊ธฐ์กด ํ’€์ด

SELECT AO.ANIMAL_ID, AO.NAME
 FROM ANIMAL_OUTS AO
 LEFT JOIN ANIMAL_INS AI
 ON AO.ANIMAL_ID = AI.ANIMAL_ID
 
 WHERE AI.INTAKE_CONDITION IS NULL

 

๋ฌธ์ œ ์›์ธ >

ํ™•์ธํ•ด๋ณด๋‹ˆ ๋ณดํ˜ธ์†Œ ๋“ค์–ด์˜ฌ ๋•Œ์™€ ๋‚˜๊ฐˆ ๋•Œ ์ด๋ฆ„์ด ๋‹ค๋ฅธ ๋™๋ฌผ์ด 1๋งˆ๋ฆฌ ์žˆ์—ˆ๋‹ค.

(ANIMAL_ID๋Š” ๊ธฐ๋ณธํ‚ค-์™ธ๋ž˜ํ‚ค ๊ด€๊ณ„๋กœ ๋™์ผ)

SELECT AO.ANIMAL_ID, AO.NAME, AI.ANIMAL_ID, AI.NAME
 FROM ANIMAL_OUTS AO
 LEFT JOIN ANIMAL_INS AI
 ON AO.ANIMAL_ID = AI.ANIMAL_ID
 WHERE AI.NAME != AO.NAME

 

JOIN์„ ํ™œ์šฉํ•ด์„œ ์ •ํ™•ํ•˜๊ฒŒ ํ’€๋ ค๋ฉด ๊ธฐ์กด 1์ฐจ ํ’€์ด๋กœ ํ’€์–ด์•ผ ํ•  ๊ฒƒ ๊ฐ™๋‹ค.