| 引擎参数 | ReplacingMergeTree([ver]):ver 为版本列,缺省保留最后写入的行 |
|---|---|
| 去重范围 | 同一分区内、排序键相同的行;跨分区不会去重 |
| 读取方式 | SELECT … FINAL,或用 GROUP BY + argMax 手工取最新 |
示例
示例
CREATE TABLE users
(
id UInt64,
name String,
updated_at DateTime
)
ENGINE = ReplacingMergeTree(updated_at)
ORDER BY id;
INSERT INTO users VALUES (1, 'alice', now() - 100), (1, 'alice-new', now());
SELECT * FROM users FINAL WHERE id = 1;典型用法是 CDC 同步场景:每条变更记录带版本(时间戳或 LSN)写入,后台合并自动收敛为最新状态。