2021-08-09 14:22:57 +00:00
---
2022-08-26 17:37:11 +00:00
slug: /ru/sql-reference/statements/alter/projection
2022-04-09 13:29:05 +00:00
sidebar_position: 49
sidebar_label: PROJECTION
2021-08-09 14:22:57 +00:00
---
# Манипуляции с проекциями {#manipulations-with-projections}
2021-08-16 02:14:36 +00:00
Доступны следующие операции с [проекциями ](../../../engines/table-engines/mergetree-family/mergetree.md#projections ):
2021-08-09 14:22:57 +00:00
2021-10-28 15:34:09 +00:00
- `ALTER TABLE [db].name ADD PROJECTION name ( SELECT <COLUMN LIST EXPR> [GROUP BY] [ORDER BY] )` — добавляет описание проекции в метаданные.
2021-08-09 14:22:57 +00:00
2021-08-12 16:46:20 +00:00
- `ALTER TABLE [db].name DROP PROJECTION name` — удаляет описание проекции из метаданных и удаляет файлы проекции с диска.
2021-08-09 14:22:57 +00:00
2021-08-12 16:46:30 +00:00
- `ALTER TABLE [db.]table MATERIALIZE PROJECTION name IN PARTITION partition_name` — перестраивает проекцию в указанной партиции. Реализовано как [мутация ](../../../sql-reference/statements/alter/index.md#mutations ).
2021-08-09 14:22:57 +00:00
2021-08-12 16:46:35 +00:00
- `ALTER TABLE [db.]table CLEAR PROJECTION name IN PARTITION partition_name` — удаляет файлы проекции с диска без удаления описания.
2021-08-09 14:22:57 +00:00
2021-08-25 12:15:39 +00:00
Команды `ADD` , `DROP` и `CLEAR` — легковесны, поскольку они только меняют метаданные или удаляют файлы.
2021-08-09 14:22:57 +00:00
2021-08-12 16:47:12 +00:00
Также команды реплицируются, синхронизируя описания проекций в метаданных с помощью ZooKeeper.
2021-08-09 14:22:57 +00:00
2022-04-09 13:29:05 +00:00
:::note
2021-08-09 14:22:57 +00:00
Манипуляции с проекциями поддерживаются только для таблиц с движком [`*MergeTree` ](../../../engines/table-engines/mergetree-family/mergetree.md ) (включая [replicated ](../../../engines/table-engines/mergetree-family/replication.md ) варианты).
2022-04-09 13:29:05 +00:00
:::