Files
NixMsg/internal/store/migrations/0004_cleanup_indexes.sql
T

12 lines
541 B
SQL

-- C-03:完成时刻列与清理索引(编号避开 U-02 的 0003)
ALTER TABLE messages ADD COLUMN completed_at INTEGER;
UPDATE messages SET completed_at = COALESCE(
(SELECT MAX(d.updated_at) FROM deliveries d WHERE d.seq = messages.seq),
send_at
) WHERE state = 'completed' AND completed_at IS NULL;
CREATE INDEX IF NOT EXISTS idx_messages_completed_at ON messages(completed_at);
CREATE INDEX IF NOT EXISTS idx_receipts_created ON receipts(created_at);
CREATE INDEX IF NOT EXISTS idx_send_keys_created ON send_keys(created_at);