DROP TABLE IF EXISTS table_in_memory; CREATE TABLE table_in_memory ( `id` UInt64, `value` UInt64 ) ENGINE = MergeTree PARTITION BY id ORDER BY value SETTINGS min_bytes_for_wide_part=1000, min_bytes_for_compact_part=900; SELECT 'init state'; INSERT INTO table_in_memory SELECT intDiv(number, 10), number FROM numbers(30); SELECT count() FROM table_in_memory; SELECT name, part_type, rows, active from system.parts WHERE table='table_in_memory' AND database=currentDatabase(); SELECT 'drop part 0'; ALTER TABLE table_in_memory DROP PARTITION 0; SELECT count() FROM table_in_memory; SELECT name, part_type, rows, active from system.parts WHERE table='table_in_memory' AND database=currentDatabase() AND active; SELECT 'detach table'; DETACH TABLE table_in_memory; SELECT name, part_type, rows, active from system.parts WHERE table='table_in_memory' AND database=currentDatabase(); SELECT 'attach table'; ATTACH TABLE table_in_memory; SELECT count() FROM table_in_memory; SELECT name, part_type, rows, active from system.parts WHERE table='table_in_memory' AND database=currentDatabase() and active;