メインコンテンツまでスキップ
バージョン: Latest-3.4

array_contains

配列が特定の要素を含んでいるかどうかを確認します。含んでいる場合は 1 を返し、そうでない場合は 0 を返します。

Syntax

array_contains(any_array, any_element)

Examples

mysql> select array_contains(["apple","orange","pear"], "orange");
+-----------------------------------------------------+
| array_contains(['apple','orange','pear'], 'orange') |
+-----------------------------------------------------+
| 1 |
+-----------------------------------------------------+
1 row in set (0.01 sec)

配列が NULL を含んでいるかどうかも確認できます。

mysql> select array_contains([1, NULL], NULL);
+--------------------------------+
| array_contains([1,NULL], NULL) |
+--------------------------------+
| 1 |
+--------------------------------+
1 row in set (0.00 sec)

多次元配列が特定のサブ配列を含んでいるかどうかを確認できます。この場合、サブ配列の要素が正確に一致することを確認する必要があります。要素の並び順も含めて一致する必要があります。

mysql> select array_contains([[1,2,3], [4,5,6]], [4,5,6]);
+--------------------------------------------+
| array_contains([[1,2,3],[4,5,6]], [4,5,6]) |
+--------------------------------------------+
| 1 |
+--------------------------------------------+
1 row in set (0.00 sec)

mysql> select array_contains([[1,2,3], [4,5,6]], [4,6,5]);
+--------------------------------------------+
| array_contains([[1,2,3],[4,5,6]], [4,6,5]) |
+--------------------------------------------+
| 0 |
+--------------------------------------------+
1 row in set (0.00 sec)

keyword

ARRAY_CONTAINS,ARRAY