2021-04-27(Tue)

ํ•ญ๋ชฉ

๋‚ด์šฉ

ํ•™์Šต ๋‚ ์งœ

2021-04-27(ํ™”)

ํ•™์Šต ์‹œ๊ฐ„

09:00~23:00

ํ•™์Šต ๋ฒ”์œ„ ๋ฐ ์ฃผ์ œ

AWS EC2

ํ•™์Šต ๋ชฉํ‘œ

Rails ์„œ๋น„์Šค ๋ฐฐํฌํ•˜์ž.

๋™๋ฃŒ ํ•™์Šต ๋ฐฉ๋ฒ•

-

์ƒ์„ธ ํ•™์Šต ๋‚ด์šฉ

๊ฐ„๋‹จํ•˜๊ฒŒ ํŠธ๋ Œ์„ผ๋˜์Šค ํ”„๋กœ์ ํŠธ๋ฅผ AWS EC2๋กœ ๋ฐฐํฌํ•˜์˜€๋‹ค!

๋ฐฐํฌ ๋งํฌ: https://bit.ly/3sU04CL

Nginx ์™€ Capistrano ์กฐํ•ฉ์„ ์ด์šฉํ•ด์„œ ์ƒ์šฉ ์„œ๋น„์Šค์ฒ˜๋Ÿผ ๋ฐฐํฌํ•˜๋Š” ๊ฒƒ๋„ ๊ณ ๋ คํ•ด๋ณด์•˜์œผ๋‚˜, ์ง€๊ธˆ ํ•ด์•ผํ•  ํ”„๋กœ์ ํŠธ๊ฐ€ ๋งŽ์•„์„œ ์šฐ์„  ์ˆœ์œ„์—์„œ ๋ฏธ๋ค˜๋‹ค.

์ฐธ๊ณ 

https://kbs4674.tistory.com/126

๊ทธ๋ฆฌ๊ณ  SQL์˜ ํ—ท๊ฐˆ๋ฆฌ๋Š” ๋ถ€๋ถ„์„ ์žก๊ธฐ ์œ„ํ•ด ์ฑ…์„ ์ฝ์—ˆ๋‹ค.

SQL ํ—ท๊ฐˆ๋ฆฌ๋Š” ๋ถ€๋ถ„์„ ์žก์ž

RDBMS๋กœ ๊ฐ์ฒด ๋‹ค๋ฃจ๋“ฏ ํ•˜๋‹ค๋ณด๋‹ˆ SQL ๋ฌธ๋ฒ•์ด ํ—ท๊ฐˆ๋ฆฐ๋‹ค.

์กฐ์ธ(Join)

์กฐ์ธ ๊ธฐ๋ฒ•์˜ ์ข…๋ฅ˜

  • ๊ณฑ์ง‘ํ•ฉ(cartesian product)

    • ๊ฐ€๋Šฅํ•œ ๋ชจ๋“  ํ–‰์„ ์กฐ์ธ

  • ๋™๋“ฑ ์กฐ์ธ(equi join or inner join)

    • ์กฐ์ธ ์กฐ๊ฑด์ด ์ •ํ™•ํžˆ ์ผ์น˜ํ•˜๋Š” ๊ฒฝ์šฐ์— ๊ฒฐ๊ณผ ์ถœ๋ ฅ

  • ๋น„๋™๋“ฑ ์กฐ์ธ(non equi join)

    • ์กฐ์ธ ์กฐ๊ฑด์ด ์ •ํ™•ํžˆ ์ผ์น˜ํ•˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ์— ๊ฒฐ๊ณผ๋ฅผ ์ถœ๋ ฅ

  • ์™ธ๋ถ€ ์กฐ์ธ(outer join)

    • ์กฐ์ธ ์กฐ๊ฑด์ด ์ •ํ™•ํžˆ ์ผ์น˜ํ•˜์ง€ ์•Š์•„๋„ ๋ชจ๋“  ๊ฒฐ๊ณผ๋ฅผ ์ถœ๋ ฅ

  • ์ž์ฒด ์กฐ์ธ(self join)

    • ์ž์ฒด ํ…Œ์ด๋ธ”์—์„œ ์กฐ์ธํ•˜๊ณ ์ž ํ•  ๋•Œ ์‚ฌ์šฉ

๋™๋“ฑ ์กฐ์ธ ์˜ˆ์‹œ

์™ธ๋ถ€ ์กฐ์ธ

์™ธ๋ถ€ ์กฐ์ธ์€ ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜์ง€ ์•Š์€ ํ–‰๋„ ๋ชจ๋‘ ์ถœ๋ ฅํ•˜๊ธฐ ์œ„ํ•œ ์กฐ์ธ ๊ธฐ๋ฒ•.

์•„๋ž˜์ฒ˜๋Ÿผ ์‰ฝ๊ฒŒ ์ƒ๊ฐํ•ด๋ณด์ž.

  1. ์–‘์ชฝ ํ…Œ์ด๋ธ” ์ค‘ ์ „๋ถ€ ์ถœ๋ ฅํ•˜๊ณ  ์‹ถ์€ ํ…Œ์ด๋ธ” ์ชฝ์„ ๋จผ์ € ์ƒ๊ฐํ•œ๋‹ค.

  2. (+)๋Š” ๋‹ค๋ฅธ ์ชฝ ํ…Œ์ด๋ธ” ์ชฝ ์กฐ์ธ ์กฐ๊ฑด์— ๋ถ™์ธ๋‹ค.

์ž์ฒด ์กฐ์ธ

์ž์ฒด ์กฐ์ธ์„ ์‚ฌ์šฉํ•˜๋ ค๋ฉด ๋ณ„์นญ์„ ์‚ฌ์šฉํ•ด์•ผ ํ•œ๋‹ค.

์ง‘ํ•ฉ ์—ฐ์‚ฐ์ž

์ง‘ํ•ฉ ์—ฐ์‚ฐ์ž๋ฅผ ์ด์šฉํ•ด๋„ ํ…Œ์ด๋ธ”์„ ์—ฐ๊ฒฐํ•  ์ˆ˜ ์žˆ๋‹ค. ๊ฐ„๋‹จํ•˜๊ฒŒ ํ•ฉ์ง‘ํ•ฉ, ๊ต์ง‘ํ•ฉ, ์ฐจ์ง‘ํ•ฉ์ด๋ผ ์ƒ๊ฐํ•˜๋ฉด ๋œ๋‹ค.

์ข…๋ฅ˜

  • UNION

    • SELECT ๋ฌธ์˜ ์กฐํšŒ ๊ฒฐ๊ณผ์˜ ํ•ฉ์ง‘ํ•ฉ. ์ค‘๋ณต๋˜๋Š” ํ–‰์€ ํ•œ ๋ฒˆ๋งŒ ์ถœ๋ ฅํ•œ๋‹ค. (ํ•ฉ์ง‘ํ•ฉ)

  • UNION ALL

    • SELECT ๋ฌธ์˜ ์กฐํšŒ ๊ฒฐ๊ณผ์˜ ํ•ฉ์ง‘ํ•ฉ. ์ค‘๋ณต๋˜๋Š” ํ–‰๋„ ๊ทธ๋Œ€๋กœ ์ถœ๋ ฅํ•œ๋‹ค. (ํ•ฉ์ง‘ํ•ฉ)

  • INTERSET

    • SELECT ๋ฌธ์˜ ์กฐํšŒ ๊ฒฐ๊ณผ์˜ ๊ต์ง‘ํ•ฉ. ์ค‘๋ณต๋˜๋Š” ํ–‰๋งŒ ์ถœ๋ ฅํ•œ๋‹ค. (๊ต์ง‘ํ•ฉ)

  • MINUS

    • ์ฒซ ๋ฒˆ์งธ SELECT ๋ฌธ์˜ ์กฐํšŒ ๊ฒฐ๊ณผ์—์„œ ๋‘ ๋ฒˆ์งธ ์กฐํšŒ ๊ฒฐ๊ณผ๋ฅผ ๋บ€๋‹ค. (์ฐจ์ง‘ํ•ฉ)

์„œ๋ธŒ์ฟผ๋ฆฌ

์„œ๋ธŒ์ฟผ๋ฆฌ์˜ ๊ฒฐ๊ณผ๋Š” ๋ฉ”์ธ ์ฟผ๋ฆฌ์˜ ์กฐ๊ฑด์œผ๋กœ ์‚ฌ์šฉ๋œ๋‹ค.

๋ฉ”์ธ ์ฟผ๋ฆฌ์™€ ์„œ๋ธŒ ์ฟผ๋ฆฌ์˜ ์—ฐ๊ฒฐ ํ˜•ํƒœ๋Š” ์—ฐ์‚ฐ์ž์— ๋”ฐ๋ผ ์˜๋ฏธ๊ฐ€ ๋‹ค๋ฅด๋‹ค.

์—ฐ์‚ฐ์ž ๊ตฌ๋ถ„

์ข…๋ฅ˜

์‚ฌ์šฉ์ฒ˜

๋‹จ์ผ ํ–‰ ์—ฐ์‚ฐ์ž

=, >, >=, <, <=, <>, !=

๋‹จ์ผ ํ–‰ ์„œ๋ธŒ์ฟผ๋ฆฌ, ๋‹ค์ค‘ ์—ด ์„œ๋ธŒ์ฟผ๋ฆฌ

๋‹ค์ค‘ ํ–‰ ์—ฐ์‚ฐ์ž

IN, NOT IN, EXISTS, ANY, ALL

๋‹ค์ค‘ ํ–‰ ์„œ๋ธŒ์ฟผ๋ฆฌ, ๋‹ค์ค‘ ์—ด ์„œ๋ธŒ์ฟผ๋ฆฌ

๋‹จ์ผ ํ–‰ ์„œ๋ธŒ์ฟผ๋ฆฌ

๋‹ค์ค‘ ํ–‰ ์„œ๋ธŒ์ฟผ๋ฆฌ

๋‹ค์ค‘ ์—ด ์„œ๋ธŒ์ฟผ๋ฆฌ

FROM ์ ˆ ์„œ๋ธŒ์ฟผ๋ฆฌ: ์ธ๋ผ์ธ ๋ทฐ

FROM ์ ˆ์—์„œ๋„ ์„œ๋ธŒ์ฟผ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค!

ํ•™์Šต ๋‚ด์šฉ์— ๋Œ€ํ•œ ๊ฐœ์ธ์ ์ธ ์ดํ‰

๋‹ค์Œ ํ•™์Šต ๊ณ„ํš

Last updated

Was this helpful?