- ์นดํ ๊ณ ๋ฆฌ:
๋ฐ์ ํ ๋ฐ ์ ํ ๋ฐ์ดํฐ ํจ์ (๋ฐฐ์ด/์ค๋ธ์ ํธ)
ARRAY_INSERTยถ
์๋ณธ ๋ฐฐ์ด์ ๋ชจ๋ ์์๋ฟ ์๋๋ผ ์ ์์๋ ํฌํจํ ๋ฐฐ์ด์ ๋ฐํํฉ๋๋ค.
๊ตฌ๋ฌธยถ
ARRAY_INSERT( <array> , <pos> , <new_element> )
- ์ฐธ๊ณ ํญ๋ชฉ:
์ธ์ยถ
array
์์ค ๋ฐฐ์ด์ ๋๋ค.
pos
์์ค ๋ฐฐ์ด์ ์์น(0๋ถํฐ ์์)์ ๋๋ค. ์ ์์๊ฐ ์ด ์์น์ ์ฝ์ ๋ฉ๋๋ค. ์ด ์์น์ ์๋ ์์(์๋ ๊ฒฝ์ฐ) ๋ฐ ๋ชจ๋ ํ์ ์์(์๋ ๊ฒฝ์ฐ)๋ ๊ฒฐ๊ณผ ๋ฐฐ์ด์์ ์ค๋ฅธ์ชฝ์ผ๋ก ํ ์์น๋งํผ ์ด๋ํฉ๋๋ค(์ฆ, ์์น 0์ ์ฝ์ ํ๋ฉด ARRAY_PREPEND ๋ฅผ ์ฌ์ฉํ๋ ๊ฒ๊ณผ ๋์ผํ ํจ๊ณผ๊ฐ ์์).
์์ ์์น๋ ๋ฐฐ์ด ๋ค์์ ์ธ๋ฑ์ค๋ก ํด์๋ฉ๋๋ค(์:
-1
์ ๊ฒฝ์ฐ, ๋ฐฐ์ด์ ๋ง์ง๋ง ์์ ์์ ์ฝ์ ).new_element
์ฝ์ ํ ์์์ ๋๋ค. ์ ์์๋
pos
์์น์ ์์ต๋๋ค. ์์ค ๋ฐฐ์ด์์ ๋ค๋ฅธ ์์์ ์๋์ ์์๋ ์ ์ง๋ฉ๋๋ค.
๋ฐํยถ
๋ฐํ๋ ๊ฐ์ ๋ฐ์ดํฐ ํ์
์ ARRAY
์
๋๋ค.
์ฌ์ฉ๋ฒ ๋ ธํธยถ
์ ํ ๋ฐฐ์ด ์ ํจ์์ ์ ๋ฌํ๋ฉด ํจ์๋ ๋์ผํ ์ ํ์ ์ ํ ๋ฐฐ์ด์ ๋ฐํํฉ๋๋ค.
array
๊ฐ ์ ํ ARRAY ์ธ ๊ฒฝ์ฐ ์ ์์์ ์ ํ์ ARRAY์ ์ ํ์ผ๋ก ๊ฐ์ ๋ณํ ๊ฐ๋ฅ ํด์ผ ํฉ๋๋ค.pos
์ ์ ๋๊ฐ์ดarray
์ ์์ ์๋ฅผ ์ด๊ณผํ๋ ๊ฒฝ์ฐ, ์ ์์์ ์์ค ๋ฐฐ์ด์ ์์ ์ฌ์ด์ ๋น ์์๊ฐ ์ถ๊ฐ๋ก ์ฝ์ ๋ฉ๋๋ค.์์๋ฅผ ๋ฐฐ์ด์ ์ถ๊ฐํ๊ฑฐ๋ ๋ฐฐ์ด ์์ ์ถ๊ฐํ๋ ค๋ฉด ๋์ ARRAY_APPEND ๋๋ ARRAY_PREPEND ๋ฅผ ์ฌ์ฉํด์ผ ํฉ๋๋ค.
์ยถ
์ด๋ ๋ฐฐ์ด์ ์ฝ์ ํ๋ ๊ฐ๋จํ ์๋ฅผ ๋ณด์ฌ์ค๋๋ค.
SELECT ARRAY_INSERT(ARRAY_CONSTRUCT(0,1,2,3),2,'hello');
+--------------------------------------------------+
| ARRAY_INSERT(ARRAY_CONSTRUCT(0,1,2,3),2,'HELLO') |
|--------------------------------------------------|
| [ |
| 0, |
| 1, |
| "hello", |
| 2, |
| 3 |
| ] |
+--------------------------------------------------+
์ด๋ ๋ฐฐ์ด์ ๊ธฐ์กด ์์ ์๋ณด๋ค ํฐ ์ธ๋ฑ์ค๋ฅผ ์ฌ์ฉํ๋ ์ฝ์ ์ ๋ณด์ฌ์ค๋๋ค.
SELECT ARRAY_INSERT(ARRAY_CONSTRUCT(0,1,2,3),5,'hello');
+--------------------------------------------------+
| ARRAY_INSERT(ARRAY_CONSTRUCT(0,1,2,3),5,'HELLO') |
|--------------------------------------------------|
| [ |
| 0, |
| 1, |
| 2, |
| 3, |
| undefined, |
| "hello" |
| ] |
+--------------------------------------------------+
์ด๋ ์์ ์ธ๋ฑ์ค๋ฅผ ์ฌ์ฉํ๋ ์ฝ์ ์ ๋ณด์ฌ์ค๋๋ค.
SELECT ARRAY_INSERT(ARRAY_CONSTRUCT(0,1,2,3),-1,'hello');
+---------------------------------------------------+
| ARRAY_INSERT(ARRAY_CONSTRUCT(0,1,2,3),-1,'HELLO') |
|---------------------------------------------------|
| [ |
| 0, |
| 1, |
| 2, |
| "hello", |
| 3 |
| ] |
+---------------------------------------------------+