Saltar al contenido principal

groupArraySample

Introducido en: v20.3.0 Crea un array con una muestra de los valores del argumento. El tamaño del array resultante está limitado a max_size elementos. Los valores del argumento se seleccionan y se añaden al array de forma aleatoria. Sintaxis
groupArraySample(max_size[, seed])(x)
Parámetros
  • max_size — Tamaño máximo del array resultante. UInt64
  • seed — Opcional. Semilla para el generador de números aleatorios. Valor predeterminado: 123456. UInt64
  • x — Argumento (nombre de columna o expresión). Any
Argumentos
  • array_column — Columna que contiene arrays que se agregarán. Array
Valor devuelto Array con argumentos x seleccionados aleatoriamente. Array(T) Ejemplos Ejemplo de uso
Query
CREATE TABLE default.colors (
    id Int32,
    color String
) ENGINE = Memory;

INSERT INTO default.colors VALUES
(1, 'red'),
(2, 'blue'),
(3, 'green'),
(4, 'white'),
(5, 'orange');

SELECT groupArraySample(3)(color) as newcolors FROM default.colors;
Response
┌─newcolors──────────────────┐
│ ['white','blue','green']   │
└────────────────────────────┘
Ejemplo con una semilla
Query
-- Consulta con nombre de columna y semilla diferente
SELECT groupArraySample(3, 987654321)(color) as newcolors FROM default.colors;
Response
┌─newcolors──────────────────┐
│ ['red','orange','green']   │
└────────────────────────────┘
Uso de una expresión como argumento
Query
-- Consulta con una expresión como argumento
SELECT groupArraySample(3)(concat('light-', color)) as newcolors FROM default.colors;
Response
┌─newcolors───────────────────────────────────┐
│ ['light-blue','light-orange','light-green'] │
└─────────────────────────────────────────────┘
Última modificación el 10 de junio de 2026