array_position
Description
配列内の要素の位置を取得します。
Syntax
array_position(any_array, any_element)
Parameters
any_array
: 検索対象の配列。any_element
: 配列内の要素に一致する式。
Return value
指定された配列内で要素が見つかればその位置を返し、見つからなければ0を返します。
Examples
- Example 1: 配列内の要素の位置を取得します。
mysql> select array_position(["apple","orange","pear"], "orange");
+-----------------------------------------------------+
| array_position(['apple','orange','pear'], 'orange') |
+-----------------------------------------------------+
| 2 |
+-----------------------------------------------------+
1 row in set (0.01 sec)
- Example 2: 配列内の
NULL
の位置を取得します。
mysql> select array_position([1, NULL], NULL);
+--------------------------------+
| array_position([1,NULL], NULL) |
+--------------------------------+
| 2 |
+--------------------------------+
1 row in set (0.00 sec)
- Example 3: 多次元配列内のサブ配列の位置を取得します。指定されたサブ配列と同じ要素が同じ順序で存在する場合にのみ、位置が返されます。
mysql> select array_position([[1,2,3], [4,5,6]], [4,5,6]);
+--------------------------------------------+
| array_position([[1,2,3],[4,5,6]], [4,5,6]) |
+--------------------------------------------+
| 2 |
+--------------------------------------------+
1 row in set (0.00 sec)
mysql> select array_position([[1,2,3], [4,5,6]], [4,6,5]);
+--------------------------------------------+
| array_position([[1,2,3],[4,5,6]], [4,6,5]) |
+--------------------------------------------+
| 0 |
+--------------------------------------------+
1 row in set (0.00 sec)
Keywords
ARRAY_POSITION, ARRAY