La función ANY_VALUE devuelve cualquier valor de los valores de expresión de entrada de una manera que no sea determinista. Esta función devuelve NULL
si la expresión de entrada no implica que se devuelva alguna fila. La función también puede devolver NULL
si hay valores NULL
en la expresión de entrada.
Sintaxis
ANY_VALUE( [ DISTINCT | ALL ] expression )
Argumentos
- DISTINCT | ALL
-
Especifique DISTINCT u ALL para devolver cualquier valor de los valores de expresión de entrada. El argumento DISTINCT no tiene ningún efecto y se pasa por alto.
- expression
-
La columna o la expresión de destino en la que opera la función. La expresión corresponde a uno de los siguientes tipos de datos:
SMALLINT
INTEGER
BIGINT
DECIMAL
REAL
DOUBLE PRECISION
BOOLEAN
CHAR
VARCHAR
DATE
TIMESTAMP
TIMESTAMPTZ
TIME
TIMETZ
INTERVALO AÑO A MES
INTERVALO DÍA A SEGUNDO
VARBYTE
SUPER
HLLSKETCH
GEOMETRY
GEOGRAPHY
Devuelve
Devuelve el mismo tipo de datos que expresión.
Notas de uso
Si una instrucción que especifica la función ANY_VALUE para una columna también incluye una segunda referencia de columna, la segunda columna debe aparecer en una cláusula GROUP BY o debe incluirse en una función de agrupación.
Ejemplos
En los ejemplos, se utiliza la tabla de eventos que se crea en el Paso 4: Cargar datos de muestra desde Amazon S3 en la Guía de introducción a Amazon Redshift. El siguiente ejemplo devuelve una instancia de cualquier DATEID donde el nombre del evento es Eagles.
select any_value(dateid) as dateid, eventname from event where eventname ='Eagles' group by eventname;
A continuación, se muestran los resultados.
dateid | eventname -------+--------------- 1878 | Eagles
El siguiente ejemplo devuelve una instancia de cualquier DATEID donde el nombre del evento es Eagles o Cold War Kids.
select any_value(dateid) as dateid, eventname from event where eventname in('Eagles', 'Cold War Kids') group by eventname;
A continuación, se muestran los resultados.
dateid | eventname -------+--------------- 1922 | Cold War Kids 1878 | Eagles