# Preserve a selected date range

For a selected date range, use an explicit predicate to copy the rows you intend to preserve. Coordinator DB does not expose table partitions as independent backup objects.

```sql
CREATE TABLE archived_events AS
SELECT id, day, kind
FROM events
WHERE day >= '2025-01-01' AND day < '2025-02-01';
```

The half-open range includes all of January while giving the next period a clear starting boundary. Adapt the columns and dates to the actual table. `CREATE TABLE ... AS SELECT` copies values but not the source table's constraints. Define a destination explicitly when keys or checks must be preserved.

A copied table inside the same database is not an independent backup. To keep a separate whole-database copy, run `VACUUM INTO` outside an open transaction and choose an absent or empty destination. Follow its UTF-8 and table restrictions before relying on the copy.

Before deleting source rows, verify the archived values, retain the schema information needed to restore them and test the intended recovery process. Exact counts help catch omissions but do not alone prove that every value was copied correctly.

See [database copies](https://coordinatordb.com/docs/concepts/features/backup-restore/overview), [`CREATE TABLE`](https://coordinatordb.com/docs/reference/statements/create/table) and [result comparisons](https://coordinatordb.com/docs/resources/support-center/knowledge-base/queries-sql/compare-resultsets).
