ARRAY_REMOVE_AT
ARRAY_REMOVE_AT
소스 ARRAY가 주어지면, 지정한 위치의 요소가 제거된 ARRAY를 반환하는 함수예요. 배열의 특정 인덱스 요소를 지우고 싶을 때 씁니다.
본문
예를 들어 ARRAY_REMOVE_AT([2, 5, 7], 0)은 0번 위치의 요소가 제거된 ARRAY([5, 7])를 반환해요.
ARRAY_REMOVE_AT( <array> , <position> )
<array> — 소스 배열이에요.
<position> — 제거할 요소의 (0부터 시작하는) 위치예요. 함수는 이 위치의 요소를 제거해요. 음수 위치는 배열 뒤에서부터 세는 인덱스로 해석돼요(예: -1은 배열의 마지막 요소를 제거).
지정한 위치의 요소가 제거된 ARRAY를 반환해요. position이 NULL이면 NULL을 반환해요.
사용 메모 — position의 절대값이 array의 길이를 초과하면, 아무 요소도 제거하지 않고 array를 그대로 반환해요.
예시 — 첫 번째 요소 제거:
SELECT ARRAY_REMOVE_AT(
[2, 5, 7],
0);
+-------------------------------+
| ARRAY_REMOVE_AT([2, 5, 7], 0) |
|-------------------------------|
| [ |
| 5, |
| 7 |
| ] |
+-------------------------------+
마지막 요소를 제거할 수도 있어요.
SELECT ARRAY_REMOVE_AT(
[2, 5, 7],
-1);
+--------------------------------+
| ARRAY_REMOVE_AT([2, 5, 7], -1) |
|--------------------------------|
| [ |
| 2, |
| 5 |
| ] |
+--------------------------------+