How to Delete Rows in ClickHouse

Last updated July 25, 2026 · By the SaturnSQL team

Since ClickHouse 23.3 you can use standard DELETE FROM ... WHERE (a lightweight delete): rows are masked immediately and physically removed during merges. ALTER TABLE ... DELETE is the older mutation form that rewrites parts. For old data, dropping a partition is far cheaper than either.

Lightweight delete (23.3+)

DELETE FROM events WHERE user_id = 101;

Mutation delete

ALTER TABLE events DELETE WHERE event_time < '2025-01-01';

Both forms are much heavier than a DELETE in an OLTP database. If your deletes follow time boundaries, partition by month and use DROP PARTITION, or let TTL expire rows automatically.

Run this in SaturnSQL

SaturnSQL is a browser-based SQL editor for teams: shared query library, schema-aware autocomplete, and scheduled exports to Google Sheets and Slack.

Try it free

Related ClickHouse guides

© 2026 Panda Capital Oy Ab. All rights reserved.