From f7b9920af2f7251ac0340841cbcbe149cb7eedcb Mon Sep 17 00:00:00 2001 From: dmitry solovianov Date: Fri, 27 Feb 2026 19:02:32 +0400 Subject: [PATCH] =?UTF-8?q?=D0=A3=D0=B4=D0=B0=D0=BB=D0=B8=D0=BB=20=D0=B4?= =?UTF-8?q?=D0=BE=D0=BC=D0=B0=D1=88=D0=BA=D1=83=20=D0=A2=D0=B8=D0=BF=D1=8B?= =?UTF-8?q?=20=D1=82=D0=B0=D0=B1=D0=BB=D0=B8=D1=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Перезалью в новой ветке --- .../Homework/Типы таблиц - Homework.sql | 81 ------------------- 1 file changed, 81 deletions(-) delete mode 100644 dsolovianov/clickhouse/Homework/Типы таблиц - Homework.sql diff --git a/dsolovianov/clickhouse/Homework/Типы таблиц - Homework.sql b/dsolovianov/clickhouse/Homework/Типы таблиц - Homework.sql deleted file mode 100644 index af9dcc3..0000000 --- a/dsolovianov/clickhouse/Homework/Типы таблиц - Homework.sql +++ /dev/null @@ -1,81 +0,0 @@ ---Задача 1: Создай таблицу page_views -DROP TABLE page_views; - -CREATE TABLE page_views -ON CLUSTER clickhouse_cluster -( - user_id UInt64, - url String, - view_time DateTime - ) -ENGINE = MergeTree() -PARTITION BY toYYYYMM(view_time) -ORDER BY (user_id, view_time); - ---Задача 2: Создай таблицу users - -CREATE TABLE users -ON CLUSTER clickhouse_cluster -( -id UInt64, -name String, -updated_at DateTime - ) -ENGINE = ReplacingMergeTree(updated_at) -ORDER BY id; - --- Задача 3: Создай таблицу region_sales - -CREATE TABLE region_sales -ON CLUSTER clickhouse_cluster -( -region String, -date Date, -sales UInt64 - ) -ENGINE = SummingMergeTree() -PARTITION BY toYYYYMM(date) -ORDER BY (region, date); - ---Задача 4: Создай таблицу user_metrics - -CREATE TABLE user_metrics -ON CLUSTER clickhouse_cluster -( -region String, -avg_age_state AggregateFunction(avg, UInt8), -active_users_state AggregateFunction(uniq, UInt64) - ) -ENGINE = AggregatingMergeTree() --Подзадача 4.2 -ORDER BY region; --Подзадача 4.3 - ---Подзадача 4.4: - Вставь данные и Читай их через `avgMerge()` и `uniqMerge()` - -INSERT INTO user_metrics -SELECT - region, - avgState(age) AS avg_age_state, - uniqState(toUInt64(user_id)) AS active_users_state -FROM -( - SELECT 'Samara' AS region, 25 AS age, 1 AS user_id - UNION ALL - SELECT 'Moscow', 30, 2 - UNION ALL - SELECT 'Moscow', 22, 3 - UNION ALL - SELECT 'Samara', 22, 4 - UNION ALL - SELECT 'Sochi', 34, 5 -) -GROUP BY region; - ---Подзадача 4.5: - Читай их через `avgMerge()` и `uniqMerge()` - -SELECT - region, - avgMerge(avg_age_state), - uniqMerge(active_users_state) -FROM user_metrics -GROUP BY region; -