CREATE TABLE IF NOT EXISTS posts ( id INTEGER PRIMARY KEY NOT NULL, user_id INTEGER NOT NULL, content TEXT NOT NULL, upvotes INTEGER NOT NULL DEFAULT 0, downvotes INTEGER NOT NULL DEFAULT 0, created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, updated_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, FOREIGN KEY (user_id) REFERENCES users (id) ); -- Create a trigger to set created_at and updated_at on INSERT CREATE TRIGGER IF NOT EXISTS set_created_at AFTER INSERT ON posts BEGIN UPDATE posts SET created_at = CURRENT_TIMESTAMP WHERE id = NEW.id; END; -- Create a trigger to set updated_at on UPDATE CREATE TRIGGER IF NOT EXISTS set_updated_at AFTER UPDATE ON posts BEGIN UPDATE posts SET updated_at = CURRENT_TIMESTAMP WHERE id = NEW.id; END; create INDEX IF NOT EXISTS posts_user_id_index ON posts (user_id); create INDEX IF NOT EXISTS posts_id_index ON posts (id); CREATE INDEX idx_created_at_desc ON your_table (created_at DESC);