๋ชฉ์
SQL ๋ฐ HTTP ์ปค๋ฅํฐ ํจ์๋ ์ฑ์ '์ถ๋ ฅ'์ ๊ฐ์ฒด ๋๋ ๋ฐฐ์ด๋ก ๋ณด๋ ๋๋ค. ์ฑ์์ ๊ฐ์ฒด๋ฅผ ์กฐ์ํ๋ ๋ฐฉ๋ฒ์ ์์๋ณด์ธ์.
์ด ๋ฌธ์์์๋ ์ฑ์์ ์ปค๋ฅํฐ ํจ์์ '์ถ๋ ฅ'์ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ ๋ํด ์์๋ด ๋๋ค**.**
์ฑ์์ ์ปค๋ฅํฐ ํจ์์ ์ถ๋ ฅ์ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ
๋ฐฐ์ด๊ณผ ๊ฐ์ฒด๋ ๋ง์ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์์ ์ฌ์ฉ๋๋ ๋ ๊ฐ์ง ์ธ๊ธฐ ์๋ ๋ฐ์ดํฐ ๊ตฌ์กฐ์ ๋๋ค. Tulip์ ์ปค๋ฅํฐ ํจ์์์ ์ด ๋ ๊ฐ์ง ๋ฐ์ดํฐ ๊ตฌ์กฐ๋ฅผ ๋ชจ๋ ํ์ฉํฉ๋๋ค:
- SQL ์ปค๋ฅํฐ ํจ์๊ฐ ์ฌ๋ฌ ํ์ ์ถ๋ ฅํ๋ ๊ฒฝ์ฐ, ์ถ๋ ฅ์ ๊ฐ์ฒด๋ก ๊ฐ๋ ์ฐฌ ๋ฐฐ์ด๋ก ์ฑ์ ์ ์ก๋ฉ๋๋ค.
- HTTP ์ปค๋ฅํฐ ํจ์๊ฐ ๋ฐฐ์ด์ด ํฌํจ๋ ์ถ๋ ฅ์ ๋ฐํํ๋ ๊ฒฝ์ฐ ๋ฐฐ์ด์ ๊ฐ์ฒด๋ก ๊ฐ๋ ์ฐฌ ๋ฐฐ์ด๋ก ์ฑ์ ํ์๋ฉ๋๋ค.
- SQL ์ปค๋ฅํฐ ํจ์๊ฐ ๋จ์ผ ํ์ ์ถ๋ ฅํ๊ฑฐ๋ HTTP ์ปค๋ฅํฐ ํจ์์ ์ถ๋ ฅ์ด ์๋ ๊ฒฝ์ฐ ๊ฐ์ ๊ฐ์ฒด์ ํค/๊ฐ ์์ผ๋ก ์ ์ฅ๋ฉ๋๋ค.
๊ฐ์ฒด๋ ์ปค๋ฅํฐ ํจ์๊ฐ ์ฑ๊ณต์ ์ผ๋ก ์๋ฃ๋ ๊ฒฝ์ฐ์๋ง ์๋์ผ๋ก ์์ฑ๋ ์ ์์ต๋๋ค.
์ด ๊ฐ์ด๋์์๋ ์ปค๋ฅํฐ ํจ์์ ์ถ๋ ฅ์ด ์๋์ผ๋ก ๊ตฌ์ฑ๋๋ ๋ฐฉ๋ฒ์ ๋ณด์ฌ๋๋ฆฌ๊ฒ ์ต๋๋ค. ๊ทธ๋ฐ ๋ค์ ์ฑ์์ ์ด๋ฌํ ์ถ๋ ฅ์ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ ์ดํด๋ด ๋๋ค.
์ปค๋ฅํฐ์์ ์ถ๋ ฅ ์์งํ๊ธฐ
ํน์ ์ด์์์ ํค๋ฆฝ ๋ฐฐ์ง ID๋ฅผ ๊ธฐ์ค์ผ๋ก SQL ๋ฐ์ดํฐ๋ฒ ์ด์ค์์ ํน์ ์ด์์์ ๋ํ ๋ชจ๋ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ธ์ค๊ณ ์ถ๋ค๊ณ ๊ฐ์ ํด ๋ณด๊ฒ ์ต๋๋ค.
์ด๋ฅผ ์ํด badge_id๋ฅผ ์ ๋ ฅ์ผ๋ก ๋ฐ๊ณ ๋ชจ๋ ์ด์์ ์ ๋ณด๋ฅผ ์ถ๋ ฅ์ ์ ์ฅํ๋ SQL ์ปค๋ฅํฐ ํจ์๋ฅผ ์์ฑํ ์ ์์ต๋๋ค. ์ด ๊ฒฝ์ฐ ์ถ๋ ฅ์ group_name์ด๋ผ๊ณ ํฉ๋๋ค. ์ด ํจ์๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค:

์ด ํจ์์๋ ๋ฌธ์์ด๋ก ์ ์ฅ๋๋ group_name์ด๋ผ๋ ํ๋์ ์ถ๋ ฅ์ด ์์ต๋๋ค. ์ด๋ ์ถ๋ ฅ ์น์ ์ "ํ ์คํธ" ๋ ์ด๋ธ์ ๊ธฐ๋ฐ์ผ๋ก ํฉ๋๋ค.

์ค์ ๋ก ์ปค๋ฅํฐ ํจ์๋ฅผ ๋ง๋ค ๋ ์ถ๋ ฅ์ ๋ฐฐ์ด์ด๋ ๊ฐ์ฒด๋ก ์ ์ฅํ๋ ์ต์ ์ ์์ต๋๋ค. ๋ค์์ "์ถ๋ ฅ" ์น์ ์์ ํ์ฉ๋๋ ๋ฐ์ดํฐ ์ ํ์ ๋๋ค.

๋ฐ๋ผ์ "ํ ์คํธ"๋ก ์ ์ฅํ ๋ค์ ํธ๋ฆฌ๊ฑฐ ์๋ํฐ์์ ์กฐ์ํด์ผ ํฉ๋๋ค.
ํธ๋ฆฌ๊ฑฐ ์๋ํฐ์์ ์ด ํจ์๋ฅผ ์คํํ์ฌ ์ถ๋ ฅ์ ๊ฐ์ฒด์ ์ ์ฅํฉ๋๋ค.

- "์ปค๋ฅํฐ ํจ์ ์คํ" ์ปค๋ฅํฐ: "SBD - ํ ์คํธ" "์ด์์ ํ์"
- ๋ฐฐ์ง ID: "์ ์ ๊ฐ" "ํ ์คํธ" "2222" ๊ฒฐ๊ณผ๋ฅผ ๋ค์ ์ด๋ฆ์ผ๋ก ์ ์ฅํฉ๋๋ค: "๋ณ์" "test_var"
์ด ๊ฒฝ์ฐ 2222 ๊ฐ์ ์ ๋ ฅ์ผ๋ก ์ฌ์ฉํ๊ณ "test_var"๋ผ๋ ๋ณ์์ ์ถ๋ ฅ์ ์ ์ฅํฉ๋๋ค.
์ฑ์์ ๊ฐ์ฒด ์ฌ์ฉํ๊ธฐ
์์ ์์ ์์๋ group_name์ด๋ผ๋ ์ถ๋ ฅ์ ๊ฐ์ ธ์จ ๋ค์ test_var๋ผ๋ ๋ณ์์ ์ ์ฅํ์ต๋๋ค. ์ฑ ๋ณ์ ๋ณด๊ธฐ์์ ์ด ๋ณ์๋ ์ค์ ๋ก "group_name"์ด๋ผ๋ ํ๋์ ์์ฑ์ ๊ฐ์ง ๊ฐ์ฒด์์ ์ ์ ์์ต๋๋ค.

์ค์ ๋ก ์ปค๋ฅํฐ ํจ์์ ์ฌ๋ฌ ๊ฐ์ ์ถ๋ ฅ์ด ์๋ ๊ฒฝ์ฐ ๊ฐ ์ถ๋ ฅ์ ํธ๋ฆฌ๊ฑฐ์์ ์์ฑ๋ "test_var"๋ผ๋ ๊ฐ์ฒด์ ์ ํ๋กํผํฐ๋ก ์ ์ฅ๋ฉ๋๋ค. ์ด๋ ๊ฒ ํ๋ฉด ํ๋์ ํจ์ ํธ์ถ์ ๋ชจ๋ ์ถ๋ ฅ์ ํ ๊ณณ์์ ์ ๋ฆฌํ ์ ์์ต๋๋ค.
์ฑ์ ๋ณ์ ํ ์คํธ๋ฅผ ์ถ๊ฐํ ๋ค์ ์ปจํ ์คํธ ์ฐฝ์ ์์ ฏ ํญ์์ ๋ณ์๋ฅผ ์ ํํ์ฌ ํจ์์ ์ถ๋ ฅ์ ํ ์คํธํ ์ ์์ต๋๋ค.

์ด ๊ฒฝ์ฐ 5๊ฐ์ ํ๋๊ฐ ์๋ ๊ฐ์ฒด๋ฅผ ์ ์ฅํ๋ "Order Details"๋ผ๋ ๋ณ์๊ฐ ์์ต๋๋ค:
- orderPlaced
- quantity
- address1
- address2
- address3
๋ณ์ ๊ฒ์ ์์์์ ๊ฐ์ฒด๋ฅผ ์ ํํ์๋ง์ ์ฑ์ ์์ฑ ์ด๋ฆ์ ๋ฐ๋ผ 5๊ฐ ํ๋๊ฐ ๋ชจ๋ ๋ ์ด๋ธ๋ก ์ฑ์์ง๋ ๊ฒ์ ๋ณผ ์ ์์ต๋๋ค. ๋ชจ๋ ํ๋๋ฅผ ํ ๋ฒ์ ๋ณด๋ ค๋ฉด ๋ณ์ ํ ์คํธ ํ๋๋ฅผ ํ์ฅํด์ผ ํ ์๋ ์์ต๋๋ค.

๊ฐ์ฒด ํ์
๊ฐ์ฒด์ ์ฌ๋ฌ ์์ฑ์ด ์๋ ๊ฒฝ์ฐ ์ฑ์ ํ ๋จ๊ณ์์ ๋ชจ๋ ์์ฑ์ ํ ๋ฒ์ ํ์ํ๊ณ ์ถ์ ์ ์์ต๋๋ค. ์ด๋ ๊ฒ ํ๋ฉด ๊ฐ ๊ฐ๋ณ ์์ฑ์ ๋ํด ์ ๋ณ์ ํ ์คํธ๋ฅผ ๋ง๋๋ ๊ฒ๋ณด๋ค ์ฝ์ต๋๋ค.
๊ฐ์ฒด์์ ๊ฐ๋ณ ์์ฑ์ ์ฌ์ ๋ ฌํ๊ฑฐ๋ ์ ๊ฑฐํ๋ ค๋ฉด ์ปจํ ์คํธ ์ฐฝ์์ ์์ฑ์์ X ๋๋ ๊ฒฉ์ ๊ธฐํธ๋ฅผ ํด๋ฆญํฉ๋๋ค.

์ด ์๋ฅผ ๋ณ๊ฒฝํ๋ ค๋ฉด ์ฌ์ด๋ ํจ๋์ ์ด ์ต์ ์ ์ฌ์ฉํฉ๋๋ค.

๋ ์ด๋ธ ๋ฐ ๊ฐ์ ํ์๋ฅผ ๋ณ๊ฒฝํ๋ ค๋ฉด ์ฌ์ด๋ ํจ๋์์ ์์ ๋ฐ ๊ธ๊ผด ํฌ๊ธฐ๋ฅผ ์กฐ์ ํฉ๋๋ค.

์ด ๋ฐ์ดํฐ๊ฐ ์ด์์์๊ฒ ์ด๋ป๊ฒ ํ์๋๋์ง ํ์ธํ๋ ค๋ฉด ํ๋ ์ด์ด์์ ์ฑ์ ์คํํ๋ฉด ์ ์ฒด ๊ฐ์ฒด๋ฅผ ๋ณผ ์ ์์ต๋๋ค. ๊ฐ์ ์์งํ๋ ์ปค๋ฅํฐ ํจ์๋ฅผ ๋จผ์ ์คํํ๋ฉด ๊ฐ์ด ํฌํจ๋ฉ๋๋ค.

์ค๋ธ์ ํธ ์กฐ์ํ๊ธฐ
์ฑ์์ ๊ฐ์ฒด ๋ฐฐ์ด์ ์ฌ์ฉํ๋ฉด ํ๊ฒํ ํ๋ ค๋ ๋ฐ์ดํฐ ํฌ์ธํธ๋ฅผ ์ถ์ถํ๋ ์ต์ ์ด ์ ํ๋ ์ ์์ต๋๋ค. ์ปค๋ฅํฐ ํจ์์์ ์ถ๋ ฅ๋๋ ๊ฐ์ฒด ๋ฐฐ์ด์ ์กฐ์ํ์ฌ ๋ก์ง ๋ฑ์ ์ฌ์ฉํ๋ ค๋ ๋ฐ์ดํฐ์ ๋ ์ฝ๊ฒ ์ก์ธ์คํ ์ ์์ต๋๋ค. ์ด ์์ ์ ์ถ์ถํ๋ ค๋ ๊ฐ์ฒด ๋ด์ ํค๋ฅผ ์ง์ ํ์ฌ ์ํํ ์ ์์ต๋๋ค. ์ด๋ ๊ฒ ํ๋ฉด ๋ฐ์ดํฐ ์ถ๋ ฅ์ ๊ฐ์ํํ์ฌ ๊ด์ฌ ์๋ ๋ฐ์ดํฐ๋ฅผ ๋ ์ ํ์ฉํ ์ ์์ต๋๋ค.
์ปค๋ฅํฐ ํจ์์ ์๋ ์๋์ ๊ฐ์ต๋๋ค:


์์ ์ถ๋ ฅ์ ๊ฐ์ฒด ๋ฐฐ์ด์ ๋๋ค. ์ปค๋ฅํฐ ํจ์๊ฐ ๊ฐ์ฒด ๋ฐฐ์ด์ ๋ฐํํ๋ ๊ฒฝ์ฐ ํํ์ ํธ์ง๊ธฐ์๋ ์ด๋ฅผ ์กฐ์ํ๋ ๋ฐ ๋์์ด ๋๋ ์ก์ ์ด ์์ต๋๋ค. ์ด๋ฌํ ๋งคํ ํจ์๋ฅผ ์ฌ์ฉํ๋ฉด ์ฃผ์ด์ง ํค๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํด๋น ๊ฐ์ ๋งคํํ ์ ์์ต๋๋ค. ์ถ๋ ฅ๋ ๊ฐ์ ์ ํํ ์ ํ์ ๋ฐฐ์ด์ ๋งคํํ ์ ์์ต๋๋ค. MAP_TO_TEXT_LIST()๋ฅผ ์ฌ์ฉํ์ฌ ๋ชจ๋ ํ์ดํ์ ํ ์คํธ ๋ฐฐ์ด์ ๊ฐ์ ธ์ฌ ์ ์์ต๋๋ค.

- "์คํ ์ปค๋ฅํฐ ๊ธฐ๋ฅ" ์ปค๋ฅํฐ: "ํ ์คํธ" "ํจ์ ํ ์คํธ"๋ฅผ ์คํํ๊ณ ๊ฒฐ๊ณผ๋ฅผ ๋ค์๊ณผ ๊ฐ์ด ์ ์ฅํฉ๋๋ค: "test_output"
- "๋ฐ์ดํฐ ์กฐ์" "์ ์ฅ" ๋ฐ์ดํฐ: "Expression" "MAP_TO_TEXT_LIST(Variable.test_out.Test Parent, 'Test Child')
๋งต ํจ์์ ์ ๋ฌ๋ ์ฒซ ๋ฒ์งธ ๋งค๊ฐ๋ณ์๋ ๊ฐ์ฒด ๋ฐฐ์ด์ ๋๋ค. ๋ ๋ฒ์งธ ๋งค๊ฐ๋ณ์์ธ 'Test Child'๋ ์ปค๋ฅํฐ ํจ์ ์ถ๋ ฅ์ ์์ฝ๋ ์ถ์ถ๊ธฐ ์ด๋ฆ์ ๋๋ค. ์ถ์ถ๊ธฐ ์ด๋ฆ์ ๊ฐ์ ์ถ์ถํ๋ ํค๋ก ์ฌ์ฉ๋ฉ๋๋ค. ์ด๋ ๊ฒ ํ๋ฉด ๋ชจ๋ ์ ๋ชฉ์ด ๋ฌธ์์ด ๋ฐฐ์ด๋ก ์ถ๋ ฅ๋ฉ๋๋ค.
์ฑ์ ๋ชจ๋ ๊ฐ์ฒด ๋ณ์ ๊ฒํ ํ๊ธฐ
์ฑ์์ ๋ฐ์ดํฐ ๊ตฌ์กฐ๋ฅผ ์กฐ์ํ๋ ค๋ฉด ํด๋น ๋ฐ์ดํฐ ๊ตฌ์กฐ๊ฐ ์ด๋ฏธ ๋ณ์๋ก ์ ์ฅ๋์ด ์์ด์ผ ํฉ๋๋ค. ์ฑ ์๋ํฐ์ ์ฌ์ด๋ ํจ๋๋ก ๋ค์ด๊ฐ์ ์ฑ ํญ์์ '๋ณ์' ์์ ์๊ทธ๋ง ๊ธฐํธ๋ฅผ ์ ํํ๋ฉด ๊ธฐ์กด ๋ณ์๋ฅผ ํ์ธํ ์ ์์ต๋๋ค.

๊ฐ์ฒด๋ ๋ฒ์ฉ ๊ฐ์ฒด ๊ธฐํธ์ธ "{}"์ ํจ๊ป ํ์๋ฉ๋๋ค.

HTTP ์ปค๋ฅํฐ์์ ์ฌ๋ฌ ํ์ SQL ๋๋ ๋ฐฐ์ด ํ์ํ๊ธฐ
HTTP ์ปค๋ฅํฐ์ ์ฌ๋ฌ ํ์ SQL ์ถ๋ ฅ ๋๋ ๋ฐฐ์ด์ ์ฑ์์ ๋ํํ ๋ชฉ๋ก์ผ๋ก ์ ํํ๋ ค๋ฉด ๋ค์ ๋ณ๋์ ๊ฐ์ด๋๋ฅผ ํ์ธํ์ธ์.
์ถ๊ฐ ์๋ฃ
- ์ฑ์์ ๋ฐฐ์ด์ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ
- ํธ๋ฆฌ๊ฑฐ๋ฅผ ์ฌ์ฉํ์ฌ ์ปค๋ฅํฐ ํจ์๋ฅผ ํธ์ถํ๋ ๋ฐฉ๋ฒ
- ์ฑ ์๋ํฐ์ ํํ์ ํธ์ง๊ธฐ ๊ฐ์ด๋
์ํ๋ ์ ๋ณด๋ฅผ ์ฐพ์๋์?
community.tulip.co๋ก ์ด๋ํ์ฌ ์ง๋ฌธ์ ๊ฒ์ํ๊ฑฐ๋ ๋ค๋ฅธ ์ฌ๋๋ค์ด ๋น์ทํ ๋ฌธ์ ๋ฅผ ๊ฒช์๋์ง ํ์ธํ ์๋ ์์ต๋๋ค!
