すべてのプロダクト
Search
ドキュメントセンター

MaxCompute:ARRAYS_OVERLAP

最終更新日:Dec 16, 2024

配列aと配列bに同じ要素が含まれているかどうかを確認します。

構文

boolean arrays_overlap(array<T> <a>,  array<T> <b>)

パラメーター

aおよびb: 必須。 これらのパラメータは配列を指定します。 array<T>Tは、配列内の要素のデータ型を指定します。 要素は任意のデータ型にすることができます。 配列aの要素と配列bの要素は同じデータ型である必要があります。

次のデータ型がサポートされています。

  • TINYINT、SMALLINT、INT、およびBIGINT

  • FLOATとDOUBLE

  • BOOLEAN

  • DECIMALとDECIMALVAL

  • DATE、DATETIME、TIMESTAMP、IntervalDayTime、およびIntervalYearMonth

  • STRING、BINARY、VARCHAR、CHAR

  • ARRAY、STRUCT、MAP

戻り値

BOOLEAN型の値が返されます。 戻り値は、次のルールによって異なります。

  • 配列bある要素が少なくとも1つ含まれており、nullではない場合、trueが返されます。

  • 配列aと配列bに同じ要素が含まれていない場合、両方の配列が空ではなく、一方または両方の配列にnull要素が含まれている場合、nullが返されます。

  • 配列aと配列bが同じ要素を含まず、両方の配列が空ではなく、null要素を含まない場合、falseが返されます。

  • 例1: array(1, 2, 3)array(3, 4, 5) に同じ要素が含まれているかどうかを確認します。 例:

    -- The return value is true. 
    select arrays_overlap(array(1, 2, 3), array(3, 4, 5));
  • 例2: array(1、2、3)array(6、4、5) に同じ要素が含まれているかどうかを確認します。 例:

    -- The return value is false. 
    select arrays_overlap(array(1, 2, 3), array(6, 4, 5));
  • 例3: 配列の1つにnull要素が含まれているかどうかを確認します。 例:

    -- The return value is null. 
    select arrays_overlap(array(1, 2, 3), array(5, 4, null));

関連関数

ARRAYS_OVERLAPは複合型関数です。 ARRAY、MAP、STRUCT、JSONなどの複雑なデータ型のデータを処理するために使用される関数の詳細については、複合型関数.