Available tables, view & macros

The database is read-only. All queries run in your browser via DuckDB-WASM.

Table snapshots

One row per (source × scrape day × rank position).

ColumnTypeNotes
show_idVARCHAR (md5 hex)Stable per-show identifier across rebuilds.
sourceVARCHAR'imdb' or 'kinopoisk'.
is_imdb / is_kinopoiskBOOLEANConvenience source flags.
scrape_dateDATEFrom filename (timezone-safe).
rankINTEGERPosition in the source's chart on that day.
title, title_ruVARCHARAs scraped that day.
urlVARCHARSource page for the show.
source_idVARCHARIMDb tt-id or Kinopoisk numeric id.
scoreDOUBLESource's user score on that day.
votesBIGINTVote count on that day.
release_yearINTEGER
scraped_atTIMESTAMPTZPrecise scrape timestamp.

View shows

One row per show with cross-source identity already resolved.

ColumnTypeNotes
show_idVARCHARInclude this column to enable per-show links in the table below.
assumed_titleVARCHARIMDb title preferred, falling back to Kinopoisk English / Russian.
title_ruVARCHARRussian title from Kinopoisk if available.
release_yearINTEGER
imdb_url, kinopoisk_urlVARCHARNULL when the show is not present on that source.
days_in_ratingBIGINTDistinct scrape dates the show appears on.
first_seen, last_seenDATE
best_rank, worst_rank, avg_rankINTEGER / DOUBLE
avg_score, latest_score, latest_votesDOUBLE / BIGINT
present_on_imdb, present_on_kinopoiskBOOLEAN

Table macros

Use these in FROM. They return tables; combine them with JOIN or IN (SELECT …).

MacroReturnsExample
scrape_date_between(d1, d2) show_ids active in the window SELECT s.* FROM shows s JOIN scrape_date_between('2026-05-01','2026-05-30') USING (show_id);
hot_in(d1, d2) shows + in-window aggregates, sorted by avg rank SELECT * FROM hot_in('2026-05-25','2026-05-30') LIMIT 20;
rank_history(show_id) per-day rank, score, votes per source SELECT * FROM rank_history((SELECT show_id FROM shows LIMIT 1));
find_show(q) shows whose assumed/Russian title contains q (case-insensitive) SELECT * FROM find_show('boys');

Query

Results