Перейти к основному содержанию
Движок таблицы GenerateRandom создает случайные данные по заданной схеме таблицы. Примеры использования:
  • Используйте в тестах для заполнения большой таблицы воспроизводимыми данными.
  • Генерируйте случайные входные данные для фаззинг-тестов.

Использование в сервере ClickHouse

ENGINE = GenerateRandom([random_seed [,max_string_length [,max_array_length]]])
Параметры max_array_length и max_string_length задают максимальную длину всех массивов, столбцов map и строк соответственно в сгенерированных данных. Движок таблицы Generate поддерживает только запросы SELECT. Он поддерживает все DataTypes, которые можно хранить в таблице, кроме AggregateFunction.

Пример

1. Создайте таблицу generate_engine_table:
CREATE TABLE generate_engine_table (name String, value UInt32) ENGINE = GenerateRandom(1, 5, 3)
2. Выполните запрос к данным:
SELECT * FROM generate_engine_table LIMIT 3
┌─name─┬──────value─┐
│ c4xJ │ 1412771199 │
│ r    │ 1791099446 │
│ 7#$  │  124312908 │
└──────┴────────────┘

Детали реализации

  • Не поддерживаются:
    • ALTER
    • SELECT ... SAMPLE
    • INSERT
    • Индексы
    • Репликация
Последнее изменение 10 июня 2026 г.