Fonction ANY_VALUE - Amazon Redshift

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Fonction ANY_VALUE

La fonction ANY_VALUE renvoie n’importe quelle valeur des valeurs d’expression en entrée de manière non déterministe. Cette fonction renvoie la valeur NULL si l’expression en entrée n’entraîne pas de renvoi de ligne. La fonction peut également renvoyer NULL si l’expression d’entrée contient des valeurs NULL.

Syntaxe

ANY_VALUE( [ DISTINCT | ALL ] expression )

Arguments

DISTINCT | ALL

Spécifiez DISTINCT ou ALL pour renvoyer n’importe quelle valeur des valeurs d’expression en entrée. L’argument DISTINCT n’a aucun effet et est ignoré.

expression

Colonne cible ou expression sur laquelle la fonction opère. L’expression est l’un des types de données suivants :

  • SMALLINT

  • INTEGER

  • BIGINT

  • DECIMAL

  • REAL

  • DOUBLE PRECISON

  • BOOLEAN

  • CHAR

  • VARCHAR

  • DATE

  • TIMESTAMP

  • TIMESTAMPTZ

  • TIME

  • TIMETZ

  • INTERVALLE D'UNE ANNÉE À L'AUTRE

  • INTERVALLE D'UN JOUR À L'AUTRE

  • VARBYTE

  • SUPER

  • HLLSKETCH

  • GEOMETRY

  • GEOGRAPHY

Renvoie

Renvoie le même type de données que expression.

Notes d’utilisation

Si une instruction qui spécifie la fonction ANY_VALUE d’une colonne inclut également une deuxième référence de colonne, la deuxième colonne doit apparaître dans une clause GROUP BY ou être incluse dans une fonction d’agrégation.

Exemples

Les exemples utilisent la table d’événements créée à l’étape 4 : charger des exemples de données depuis Amazon S3 du Guide de démarrage d’Amazon Redshift. L’exemple suivant renvoie une instance de n’importe quel dateid dont le nom d’événement est Eagles.

select any_value(dateid) as dateid, eventname from event where eventname ='Eagles' group by eventname;

Voici les résultats.

dateid | eventname -------+--------------- 1878 | Eagles

L’exemple suivant renvoie une instance de n’importe quel dateid dont le nom d’événement est Eagles ou Cold War Kids.

select any_value(dateid) as dateid, eventname from event where eventname in('Eagles', 'Cold War Kids') group by eventname;

Voici les résultats.

dateid | eventname -------+--------------- 1922 | Cold War Kids 1878 | Eagles