๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ๋งฅ๋ฝ์—์„œ "๊ต์ฐจ"๋ผ๋Š” ์šฉ์–ด๋Š” ๋‘ ๊ฐœ ์ด์ƒ์˜ ๋ฐ์ดํ„ฐ ํ…Œ์ด๋ธ”์— ๊ณตํ†ต์ ์ธ ์š”์†Œ(๋ ˆ์ฝ”๋“œ ๋˜๋Š” ํŠœํ”Œ)๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์ง‘ํ•ฉ ๊ธฐ๋ฐ˜ ์ž‘์—…์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ๊ต์ฐจ ์ž‘์—…์€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ด€๋ฆฌ ์‹œ์Šคํ…œ(DBMS)์—์„œ ๊ด‘๋ฒ”์œ„ํ•˜๊ฒŒ ์‚ฌ์šฉ๋˜์–ด ๋ณต์žกํ•œ ์ฟผ๋ฆฌ๋ฅผ ์ˆ˜ํ–‰ํ•˜๊ณ  ์—ฌ๋Ÿฌ ๋ฐ์ดํ„ฐ ์†Œ์Šค์—์„œ ์˜๋ฏธ ์žˆ๋Š” ํ†ต์ฐฐ๋ ฅ์„ ์ถ”์ถœํ•ฉ๋‹ˆ๋‹ค. ๊ต์ฐจ ์ž‘์—…์—๋Š” ์ผ๋ฐ˜์ ์œผ๋กœ ํŠน์ • ์†์„ฑ์ด๋‚˜ ์กฐ๊ฑด์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ…Œ์ด๋ธ”์˜ ํ–‰๊ณผ ์—ด์„ ๋น„๊ตํ•˜๊ณ  ์ง€์ •๋œ ๊ธฐ์ค€๊ณผ ์ผ์น˜ํ•˜๋Š” ํ–‰์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์ž‘์—…์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. ๊ต์ฐจ์ ์€ ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ์ด๋ก ์  ๊ธฐ๋ฐ˜์ธ ๊ด€๊ณ„ํ˜• ๋Œ€์ˆ˜ํ•™์—์„œ ์ค‘์š”ํ•œ ์—ญํ• ์„ ํ•˜๋ฉฐ ์กฐ์ธ ๋ฐ ํ•˜์œ„ ์ฟผ๋ฆฌ์™€ ๊ฐ™์€ ์ƒ์œ„ ์ˆ˜์ค€ ์ž‘์—…์„ ์œ„ํ•œ ๊ตฌ์„ฑ ์š”์†Œ ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค.

๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ์†์„ฑ์„ ๋‚˜ํƒ€๋‚ด๋Š” ์—ด๊ณผ ๋ ˆ์ฝ”๋“œ๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ–‰์„ ํฌํ•จํ•˜๋Š” ์ž˜ ์ •์˜๋œ ์Šคํ‚ค๋งˆ๊ฐ€ ์žˆ๋Š” ํ…Œ์ด๋ธ” ๋ชจ์Œ์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๊ณ  ๊ตฌ์„ฑํ•ฉ๋‹ˆ๋‹ค. ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ๊ต์ฐจ ์ž‘์—…์—๋Š” ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ๊ด€๋ฆฌํ•˜๊ณ  ์กฐ์ž‘ํ•˜๋„๋ก ์„ค๊ณ„๋œ ๋„๋ฉ”์ธ๋ณ„ ์–ธ์–ด์ธ SQL(๊ตฌ์กฐ์  ์ฟผ๋ฆฌ ์–ธ์–ด)์„ ์‚ฌ์šฉํ•ด์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์Šต๋‹ˆ๋‹ค. SQL์€ INNER JOIN ๋ฐ INTERSECT ์ ˆ์„ ํฌํ•จํ•˜์—ฌ ๊ต์ฐจ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๋‹ค์–‘ํ•œ ๋ช…๋ น๊ณผ ํ•จ์ˆ˜๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

INNER JOIN ์ ˆ์€ ์ง€์ •๋œ ์ผ์น˜ ์†์„ฑ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ๋‘˜ ์ด์ƒ์˜ ํ…Œ์ด๋ธ”์˜ ๋ ˆ์ฝ”๋“œ๋ฅผ ๊ฒฐํ•ฉํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. INNER JOIN์˜ ๊ฒฐ๊ณผ๋Š” ์ง€์ •๋œ ์กฐ์ธ ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋Š” ๋ชจ๋“  ๋ ˆ์ฝ”๋“œ๋ฅผ ํฌํ•จํ•˜๋Š” ํ…Œ์ด๋ธ”์ž…๋‹ˆ๋‹ค. INNER JOIN์˜ ์„ฑ๋Šฅ๊ณผ ํšจ์œจ์„ฑ์€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์Šคํ‚ค๋งˆ ๋””์ž์ธ, ์ธ๋ฑ์‹ฑ ์ „๋žต ๋ฐ ์ฟผ๋ฆฌ ์ตœ์ ํ™”์— ํฌ๊ฒŒ ์˜ํ–ฅ์„ ๋ฐ›์Šต๋‹ˆ๋‹ค. ๋‹ค์Œ SQL ์˜ˆ๋Š” ์ผ์น˜ํ•˜๋Š” ์†์„ฑ 'customer_id'๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๋‘ ํ…Œ์ด๋ธ” 'orders'์™€ 'customers'์˜ ๋ ˆ์ฝ”๋“œ๋ฅผ ๊ฒฐํ•ฉํ•˜๋Š” INNER JOIN ์ž‘์—…์„ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค.

SELECT ์ฃผ๋ฌธ.์ฃผ๋ฌธ_ID, ๊ณ ๊ฐ.๊ณ ๊ฐ_์ด๋ฆ„
์ฃผ๋ฌธ์—์„œ
INNER JOIN ๊ณ ๊ฐ ON ์ฃผ๋ฌธ.๊ณ ๊ฐ_ID = ๊ณ ๊ฐ.๊ณ ๊ฐ_ID;

INTERSECT ๋ช…๋ น์€ ๋‘ ๊ฐœ ์ด์ƒ์˜ SELECT ๋ฌธ์˜ ๊ณตํ†ต ๋ ˆ์ฝ”๋“œ๋ฅผ ๊ฒ€์ƒ‰ํ•˜๋Š” ๋˜ ๋‹ค๋ฅธ SQL ๊ตฌ๋ฌธ์ž…๋‹ˆ๋‹ค. ์ด ๋ช…๋ น์€ SELECT ๋ฌธ์˜ ๊ฒฐ๊ณผ ์ง‘ํ•ฉ์„ ๋น„๊ตํ•˜๊ณ  ๋‘ ๊ฒฐ๊ณผ ์ง‘ํ•ฉ์— ๋ชจ๋‘ ์กด์žฌํ•˜๋Š” ๋ ˆ์ฝ”๋“œ๋งŒ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. INTERSECT ์ž‘์—…์€ ์—ฌ๋Ÿฌ ๋ฐ์ดํ„ฐ ์†Œ์Šค์—์„œ ๊ณต์œ ํ•˜๋Š” ๋ ˆ์ฝ”๋“œ๋ฅผ ์ฐพ๊ฑฐ๋‚˜ ์—ฌ๋Ÿฌ ๊ธฐ์ค€์— ๋”ฐ๋ผ ํ–‰์„ ์ผ์น˜์‹œ์ผœ์•ผ ํ•  ๋•Œ ๋งค์šฐ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค. ๋‹ค์Œ์€ INTERSECT ๋ช…๋ น์˜ ์‚ฌ์šฉ์„ ๋ณด์—ฌ์ฃผ๋Š” SQL ์˜ˆ์ž…๋‹ˆ๋‹ค.

์—ด1, ์—ด2 ์„ ํƒ
ํ…Œ์ด๋ธ”1์—์„œ
๊ต์ฐจ
์—ด1, ์—ด2 ์„ ํƒ
ํ…Œ์ด๋ธ”2์—์„œ;

๋ฐฑ์—”๋“œ, ์›น ๋ฐ ๋ชจ๋ฐ”์ผ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์ƒ์„ฑํ•˜๊ธฐ ์œ„ํ•œ ๊ฐ•๋ ฅํ•œ no-code ํ”Œ๋žซํผ์ธ AppMaster ๋Š” ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ ๊ต์ฐจ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๊ธฐ ์œ„ํ•œ ์ง๊ด€์ ์ธ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ํ”Œ๋žซํผ์˜ ์‹œ๊ฐ์  ๋ฐ์ดํ„ฐ ๋ชจ๋ธ(๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์Šคํ‚ค๋งˆ)๊ณผ BP ๋””์ž์ด๋„ˆ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด SQL ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜์ง€ ์•Š๊ณ ๋„ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ํ…Œ์ด๋ธ”์„ ์›ํ™œํ•˜๊ฒŒ ์—ฐ๊ฒฐํ•˜๊ณ  ๋น„์ฆˆ๋‹ˆ์Šค ํ”„๋กœ์„ธ์Šค๋ฅผ ์ƒ์„ฑํ•˜๋ฉฐ ๊ต์ฐจ ์ž‘์—…์„ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ณต์žกํ•œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ฟผ๋ฆฌ ๋ฐ ์šด์˜์„ ๊ด€๋ฆฌํ•˜๋Š” AppMaster ์˜ ๊ณ ๊ธ‰ ๊ธฐ๋Šฅ์€ ์—”ํ„ฐํ”„๋ผ์ด์ฆˆ ๊ทœ๋ชจ ๋ฐ ๊ณ ๋ถ€ํ•˜ ์‚ฌ์šฉ ์‚ฌ๋ก€๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐ ๋งค์šฐ ์ ํ•ฉํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ API ๋ฌธ์„œ ๋ฐ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์Šคํ‚ค๋งˆ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ์Šคํฌ๋ฆฝํŠธ์˜ ์ž๋™ ์ƒ์„ฑ์€ ์›ํ™œํ•˜๊ณ  ๋‚ด๊ฒฐํ•จ์„ฑ์ด ์žˆ๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ ํ”„๋กœ์„ธ์Šค๋ฅผ ๋ณด์žฅํ•ฉ๋‹ˆ๋‹ค.

ํฌ๊ด„์ ์ธ ๋„๊ตฌ ์ œํ’ˆ๊ตฐ์˜ ์ผ๋ถ€๋กœ AppMaster ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์Šคํ‚ค๋งˆ ์„ค๊ณ„, ํ…Œ์ด๋ธ” ์ธ๋ฑ์‹ฑ ์ „๋žต ๋ฐ SQL ์ฟผ๋ฆฌ ๋ชจ๋ฒ” ์‚ฌ๋ก€์— ๋Œ€ํ•œ ์ž์„ธํ•œ ์ง€์นจ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋ฆฌ์†Œ์Šค๋Š” ๊ฐœ๋ฐœ์ž๊ฐ€ ํšจ์œจ์ ์ธ ๊ต์ฐจ ์ž‘์—… ๋ฐ ๊ธฐํƒ€ ์ฟผ๋ฆฌ๋ฅผ ๊ตฌํ˜„ํ•˜์—ฌ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„ฑ๋Šฅ์„ ์ตœ์ ํ™”ํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค. PostgreSQL ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์‹œ์Šคํ…œ์„ ์ง€์›ํ•จ์œผ๋กœ์จ ํ”Œ๋žซํผ์€ ๊ด‘๋ฒ”์œ„ํ•œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€์˜ ์›ํ™œํ•œ ์ƒํ˜ธ ์šด์šฉ์„ฑ์„ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•˜๊ณ  ๋›ฐ์–ด๋‚œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ํ™•์žฅ์„ฑ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

๋ณต์žกํ•œ ๋ฐ์ดํ„ฐ ๊ด€๊ณ„๊ฐ€ ์žˆ๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ฐœ๋ฐœํ•  ๋•Œ๋Š” ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ๋งฅ๋ฝ์—์„œ ๊ต์ฐจ ์ž‘์—…์„ ์‹๋ณ„ํ•˜๊ณ  ๋ถ„์„ํ•  ์ˆ˜ ์žˆ๋Š” ์˜ฌ๋ฐ”๋ฅธ ๋„๊ตฌ๋ฅผ ๊ฐ–์ถ”๋Š” ๊ฒƒ์ด ํ•„์ˆ˜์ ์ž…๋‹ˆ๋‹ค. AppMaster ์˜ ํฌ๊ด„์ ์ธ no-code ์†”๋ฃจ์…˜์€ ๋ณต์žกํ•œ ๋ฐ์ดํ„ฐ ์ฟผ๋ฆฌ๋ฅผ ํšจ์œจ์ ์œผ๋กœ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” ํƒ์›”ํ•œ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜์—ฌ ๋” ๋น ๋ฅด๊ณ  ๋น„์šฉ ํšจ์œจ์ ์ธ ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ์„ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค. ๊ฐœ๋ฐœ์ž๊ฐ€ ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ๋ณต์žกํ•œ ์„ธ๊ณ„๋ฅผ ํƒ์ƒ‰ํ•  ๋•Œ AppMaster ๊ต์ฐจ ์ž‘์—…์˜ ๊ฐ„์†Œํ™”๋˜๊ณ  ์ •ํ™•ํ•œ ์‹คํ–‰์„ ๋ณด์žฅํ•˜์—ฌ ๊ฐ„ํŽธํ•˜๊ณ  ๊ฐ•๋ ฅํ•œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ ๊ฒฝํ—˜์„ ์œ„ํ•œ ๊ธธ์„ ์—ด์–ด์ค๋‹ˆ๋‹ค.