Amazon Redshift 將不再支援從修補程式 198 開始建立新的 Python UDFs。現有 Python UDF 將繼續正常運作至 2026 年 6 月 30 日。如需詳細資訊,請參閱部落格文章
本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
ARRAY_INTERSECTION 函數
傳回新陣列,只包含兩個輸入陣列中存在的元素。函數是 NULL 安全的,這表示它將 NULLs 視為已知物件。不保證結果中的元素順序。
語法
ARRAY_INTERSECTION( array1, array2 [, distinct] )
引數
- array1
-
指定陣列的 SUPER 表達式。
- array2
-
指定陣列的 SUPER 表達式。
- distinct
-
布林值,指定是否僅傳回不同的元素:
distinct = FALSE:適用多組語意。會保留重複的元素,且結果中每個元素的頻率等於兩個輸入陣列中其頻率的最小值。
distinct = TRUE:設定語意適用。只會傳回兩個陣列通用的唯一元素,不會重複。
預設值為 FALSE。
傳回類型
ARRAY_INTERSECTION 函數會傳回 SUPER 類型。
範例
下列範例顯示 ARRAY_INTERSECTION 函數。
SELECT ARRAY_INTERSECTION(ARRAY('a','b','c'), ARRAY('b','c','d')); array_intersection -------------------- ["b","c"] (1 row)
多組語意:
SELECT ARRAY_INTERSECTION(ARRAY('a','b','b'), ARRAY('b','b','b')); array_intersection -------------------- ["b","b"] (1 row)
設定語意:
SELECT ARRAY_INTERSECTION(ARRAY('a','b','b'), ARRAY('b','b','b'), TRUE); array_intersection -------------------- ["b"] (1 row)
NULLs視為已知物件。
SELECT ARRAY_INTERSECTION(ARRAY('a',NULL), ARRAY('b',NULL)); array_intersection -------------------- [null] (1 row)