Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

groupArraySample

groupArraySample

Introduit dans : v20.3.0

Crée un tableau contenant un échantillon de valeurs d’argument. La taille du tableau résultant est limitée à max_size éléments. Les valeurs d’argument sont sélectionnées aléatoirement et ajoutées au tableau.

Syntaxe

groupArraySample(max_size[, seed])(x)

Paramètres

  • max_size — Taille maximale du tableau résultant. UInt64
  • seed — Facultatif. Graine du générateur de nombres aléatoires. Valeur par défaut : 123456. UInt64
  • x — Argument (nom de colonne ou expression). Any

Arguments

  • array_column — Colonne contenant les tableaux à agréger. Array

Valeur retournée

Tableau de valeurs x sélectionnées aléatoirement. Array(T)

Exemples

Exemple d'utilisation

CREATE TABLE colors (
    id Int32,
    color String
) ENGINE = Memory;

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

SELECT groupArraySample(3)(color) as newcolors FROM colors;
┌─newcolors──────────────────┐
│ ['white','blue','green']   │
└────────────────────────────┘

Exemple avec une graine

-- Query with column name and different seed
SELECT groupArraySample(3, 987654321)(color) as newcolors FROM colors;
┌─newcolors────────────────┐
│ ['red','orange','green'] │
└──────────────────────────┘

Utiliser une expression comme argument

-- Query with expression as argument
SELECT groupArraySample(3)(concat('light-', color)) as newcolors FROM colors;
┌─newcolors───────────────────────────────────┐
│ ['light-blue','light-orange','light-green'] │
└─────────────────────────────────────────────┘
Navigation