SQL

CREATE TABLE email_threads  (
  thread_key TEXT PRIMARY KEY,
  provider TEXT,
  mailbox TEXT,
  subject TEXT,
  participants TEXT,
  message_count INTEGER NOT NULL DEFAULT 0,
  pending_reply_count INTEGER NOT NULL DEFAULT 0,
  last_message_id TEXT,
  last_message_at TEXT,
  last_inbound_at TEXT,
  last_outbound_at TEXT,
  latest_draft_id TEXT,
  updated_at TEXT NOT NULL DEFAULT (strftime('%Y-%m-%dT%H:%M:%fZ','now')),
  created_at TEXT NOT NULL DEFAULT (strftime('%Y-%m-%dT%H:%M:%fZ','now'))
)

+ Add column

Columns

Column Data type Allow null Primary key Actions
thread_key TEXT Rename | Drop
provider TEXT Rename | Drop
mailbox TEXT Rename | Drop
subject TEXT Rename | Drop
participants TEXT Rename | Drop
message_count INTEGER Rename | Drop
pending_reply_count INTEGER Rename | Drop
last_message_id TEXT Rename | Drop
last_message_at TEXT Rename | Drop
last_inbound_at TEXT Rename | Drop
last_outbound_at TEXT Rename | Drop
latest_draft_id TEXT Rename | Drop
updated_at TEXT Rename | Drop
created_at TEXT Rename | Drop

+ Add index

Indexes

Name Columns Unique SQL Drop?
idx_email_threads_last_message last_message_at SQL
CREATE INDEX idx_email_threads_last_message
ON email_threads(last_message_at DESC)
Drop
idx_email_threads_pending
  • pending_reply_count
  • updated_at
SQL
CREATE INDEX idx_email_threads_pending
ON email_threads(pending_reply_count DESC, updated_at DESC)
Drop
sqlite_autoindex_email_threads_1 thread_key SQL
-- no sql found --
Drop