ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • MSSQL : INNER JOIN๊ณผ CROSS APPLY์˜ ์ฐจ์ด
    DB 2020. 2. 17. 12:57
    ๋ฐ˜์‘ํ˜•

     

    ๋จผ์ € JOIN๊ณผ APPLY๋Š” ๋น„์Šทํ•œ ์„ฑ์งˆ์„ ๊ฐ€์ง„ JOIN์œผ๋กœ

    INNER JOIN์€ CROSS APPLY์™€ OUTER APPLY๋Š” OUTER JOIN๊ณผ ๋น„์Šทํ•œ ๊ฒฐ๊ณผ๋ฅผ ๋‚ธ๋‹ค.


    1. APPLY ์—ฐ์‚ฐ์ž์˜ ํŠน์ง•

     

    1) APPLY ์—ฐ์‚ฐ์ž๋Š” ์™ธ๋ถ€ ํ…Œ์ด๋ธ”์„ ๋‚ด๋ถ€ ํ…Œ์ด๋ธ”๊ณผ ์กฐ์ธํ•  ์ˆ˜ ์žˆ์Œ
    2) APPLY
    ์—ฐ์‚ฐ์ž๋Š” ํ•œ์ชฝ์ด ๋‹ค๋ฅธ ์ชฝ์— ์žˆ๋Š” ํ…Œ์ด๋ธ”์˜ ๊ฐ ํ–‰์— ๋Œ€ํ•ด ํ‰๊ฐ€ํ•˜๋ ค๋Š” ํ…Œ์ด๋ธ” ํ‰๊ฐ€์‹์ด ์žˆ์„ ๋•Œ ์‚ฌ์šฉํ•˜๊ธฐ ์ข‹์€ ์˜ต์…˜
    (
    ์˜ค๋ฅธ์ชฝ ํ…Œ์ด๋ธ”์€ ์™ผ์ชฝ ํ…Œ์ด๋ธ”์˜ ๊ฐ ํ–‰์— ๋Œ€ํ•ด ์ฒ˜๋ฆฌ๋จ
    ์™ผ์ชฝ ํ…Œ์ด๋ธ”์„ ๋จผ์ € ํ‰๊ฐ€ ํ•œ ๋‹ค์Œ ์™ผ์ชฝ ํ…Œ์ด๋ธ”์˜ ๊ฐ ํ–‰์— ๋Œ€ํ•ด ์˜ค๋ฅธ์ชฝ ํ…Œ์ด๋ธ”์„ ํ‰๊ฐ€ํ•˜์—ฌ ์ตœ์ข… ๊ฒฐ๊ณผ ์ง‘ํ•ฉ์„ ์ƒ์„ฑ, ์ตœ์ข… ๊ฒฐ๊ณผ ์ง‘ํ•ฉ์—๋Š” ๋‘ ํ…Œ์ด๋ธ”์˜ ๋ชจ๋“  ์—ด์ด ํฌํ•จ๋จ)

    2. INNER JOIN  / CROSS APLLY

     

    1) INNER JOIN
    ์ „์ฒด ๋ฐ์ดํ„ฐ์—์„œ AND๋กœ ํ•ด๋‹น ๋ฐ์ดํ„ฐ๋ฅผ ๊ฑธ๋Ÿฌ๋ƒ„

    2) CROSS APPLY
    ์„ ํƒํ•œ ๋ฐ์ดํ„ฐ๋งŒ ๊ฒ€์ƒ‰ํ•˜์—ฌ JOINํ•˜๋„๋ก ๋˜์–ด์žˆ์Œ
    INNER JOIN
    ๊ณผ ์œ ์‚ฌํ•˜์ง€๋งŒ ํ…Œ์ด๋ธ” ํ‰๊ฐ€ ํ•จ์ˆ˜๋ฅผ SQLํ…Œ์ด๋ธ”๊ณผ ์กฐ์ธํ•˜๋Š”๋ฐ ์‚ฌ์šฉํ•  ์ˆ˜๋„ ์žˆ์Œ, CROSS APPLY์˜ ์ตœ์ข… ์ถœ๋ ฅ์€ ํ…Œ์ด๋ธ” ํ‰๊ฐ€ ํ•จ์ˆ˜์˜ ์ถœ๋ ฅ๊ณผ SQL ํ…Œ์ด๋ธ”๊ฐ„์— ์ผ์น˜ํ•˜๋Š” ๋ ˆ์ฝ”๋“œ๋กœ ๊ตฌ์„ฑ

    4. APPLY์™€ JOIN์˜ ์ฐจ์ด์ 


    1) APPLY ์—ฐ์‚ฐ์ž์˜ ์ขŒ์šฐ ํ”ผ์—ฐ์‚ฐ์ž๋Š” ๋ชจ๋‘ ํ…Œ์ด๋ธ” ์‹

    2) CROSS APPLY
    ์™€ OUTER APPLY๋Š” ์กฐ์ธ๋ฐฉ๋ฒ•์œผ๋กœ APPLY_FUNCTION ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Œ
    ํ•˜์ง€๋งŒ INNER JOIN๊ณผ LEFT OUTER JOIN์€ ์กฐ์ธ๋ฐฉ๋ฒ•์œผ๋กœ APPLY_FUNCTION ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์Œ

     


    ๊ฒฐ๋ก 


    ๊ธฐ๋Šฅ์ ์ธ ๋ถ€๋ถ€์„ ๊ณ„์† ํ˜ธ์ถœํ•˜๋Š” ๊ฒฝ์šฐ๋ฉด CROSS JOIN์„ ์“ฐ๊ฑฐ๋‚˜ ๊ฑฐ๊ธฐ์— ๋งž๋Š” ์„œ๋ธŒ์ฟผ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋œ๋‹ค.
    CROSS
    ์กฐ์ธ์€ ์‰ฝ๊ฒŒ ํ•จ์ˆ˜๋Œ€ํ–‰์ด๋ผ๊ณ  ์ƒ๊ฐํ•˜๋ฉด ๋˜๊ณ , ๊ทธ ์•ˆ์— ์ „์ฒด ๋˜๋Š” ๋ถ€๋ถ„์˜ ์—ฐ์‚ฐ์‹์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ•˜๋ฉด ๋  ๊ฒƒ ๊ฐ™๋‹ค ! 



     

    ๋ฐ˜์‘ํ˜•

    ๋Œ“๊ธ€

Designed by Tistory.