Skip to content
Production · drill

Ask once, not once per row

For every actor with events, return the actor_id and how many events they have, busiest first then by actor_id. Call the count events. One pass, not one query per actor.

Tables in this database · Events
CREATE TABLE events (
  id INTEGER PRIMARY KEY,
  actor_id INTEGER NOT NULL,
  kind TEXT NOT NULL,
  email TEXT NOT NULL,
  happened_on DATE NOT NULL,
  duration_ms INTEGER
)
CREATE INDEX events_actor_idx ON events (actor_id);
CREATE INDEX events_kind_happened_idx ON events (kind, happened_on);
CREATE INDEX events_email_idx ON events (email);

Your query

⌘⏎