Tous les produits
Search
Centre de documentation

MaxCompute:ARRAY_EXCEPT

Dernière mise à jour :Aug 10, 2026

Renvoie un nouveau tableau ARRAY contenant les éléments présents dans le tableau a mais absents du tableau b, après suppression des doublons.

Syntaxe

array<T> array_except(array<T> <a>, array<T> <b>)

Paramètres

a, b : obligatoires. Tableaux de type ARRAY. Dans la syntaxe array<T>, T représente le type de données des éléments du tableau ; ceux-ci peuvent être de n'importe quel type. Les types de données des tableaux a et b doivent être identiques.

Valeur de retour

La fonction renvoie une valeur de type ARRAY selon les règles suivantes :

  • Le nouveau tableau ARRAY ne contient aucun doublon et conserve l'ordre des éléments du tableau a.

  • Les valeurs NULL présentes dans le tableau ARRAY sont prises en compte lors du calcul.

  • Si l'un des tableaux d'entrée est vide, la fonction renvoie le tableau non vide après suppression des doublons.

  • Si tous les tableaux d'entrée sont vides, la fonction renvoie un tableau vide.

Exemples

  • Exemple 1 : identifier les éléments présents dans le tableau ARRAY array(1, 1, 3, 3, 5, 5) mais absents du tableau ARRAY array(1, 1, 2, 2, 3, 3), puis supprimer les doublons. Exemple de commande :

    --返回[5]。
    select array_except(array(1, 1, 3, 3, 5, 5), array(1, 1, 2, 2, 3, 3));
  • Exemple 2 : identifier les éléments présents dans le tableau ARRAY array(1, 1, 3, 3, 5, 5, null, null) mais absents du tableau ARRAY array(1, 1, 2, 2, 3, 3), puis supprimer les doublons. Exemple de commande :

    --返回[5,null]。
    select array_except(array(1, 1, 3, 3, 5, 5, null, null), array(1, 1, 2, 2, 3, 3));
  • Exemple 3 : l'un des tableaux ARRAY d'entrée est vide. Exemple de commande :

    --返回[2,1]。
    select array_except(array(2, 1, 1, 2), cast(array() as array<int>)); 
  • Exemple 4 : tous les tableaux ARRAY d'entrée sont vides. Exemple de commande :

    --返回[]。
    select array_except(cast(array() as array<int>), cast(array() as array<int>));

Fonctions associées

La fonction ARRAY_EXCEPT fait partie des fonctions de type complexe. Pour plus d'informations sur les fonctions de traitement des données de type complexe (telles que ARRAY, MAP, STRUCT et JSON), consultez la rubrique Complex type functions.