SHOWS
SHOWS is the workhorse of GDQL. It returns one row per concert and lets you filter by venue, year, era, segues, set positions, played songs, guests, and more — then shape the output with ORDER BY, LIMIT, and AS.
Synopsis
SHOWS [ AT "venue_or_city" ] [ FROM date_or_era ] [ WHERE condition [ AND | OR condition ... ] ] [ ORDER BY sort_spec ] [ LIMIT n ] [ AS format ];Every clause is optional — SHOWS; on its own returns every show in the database.
How it works
SHOWS queries the show table and returns date, venue, city, state, and tour for each match. Combine clauses freely: AT narrows by location, FROM by date, WHERE by anything that happened during the show. The clauses don’t have a strict order — SHOWS FROM 1977 AT "Winterland" and SHOWS AT "Winterland" FROM 1977 mean the same thing.
Clauses
| Clause | What it does |
|---|---|
AT "venue" | Match a venue or city by partial string. AT "Fillmore" matches Fillmore West and Fillmore East; AT "New York" matches every NYC venue. |
FROM 1977 | Single year. Two-digit shorthand works: FROM 77. |
FROM 1977-1980 | Inclusive year range. |
FROM PRIMAL | Named era. See Operators → Eras for the full list. |
TOUR "Spring 1977" | Filter by tour name (partial match). |
WHERE ... | Any condition: segue, set position, played. See WHERE conditions. |
ORDER BY DATE | Sort by date. Add DESC for newest first, or ASC for explicit ascending. |
LIMIT 10 | Cap the number of rows returned. |
AS json | Output format: TABLE (default), JSON, CSV, or SETLIST. |
Examples
Everything
SHOWS;
SHOWS LIMIT 20;By year, range, or era
SHOWS FROM 1977;
SHOWS FROM 77; -- two-digit shorthand
SHOWS FROM 1977-1980; -- year range
SHOWS FROM 77-80 LIMIT 10;SHOWS FROM PRIMAL; -- named era
SHOWS FROM EUROPE72;
SHOWS FROM BRENT_ERA;By venue or city
SHOWS AT "Fillmore West";
SHOWS AT "Winterland" FROM 1977; -- combine with FROM
SHOWS AT "New York" LIMIT 10; -- matches all NYC venues
SHOWS AT "Madison Square Garden";By tour
SHOWS TOUR "Europe" FROM 1972;Heads-up: the
TOURkeyword is part of the language but tour data is not yet imported into the embedded database — these queries currently return zero rows. UseFROM EUROPE72or an explicit date range as a workaround.
With WHERE conditions
Filter by segue, set position, played songs, or guests. See WHERE for the full vocabulary.
SHOWS FROM 1977 WHERE "Scarlet Begonias" > "Fire on the Mountain"; -- segue
SHOWS WHERE SET1 OPENED "Jack Straw"; -- set position
SHOWS FROM 1990 WHERE PLAYED "Eyes of the World"; -- played
SHOWS WHERE "Help on the Way" > "Slipknot!" > "Franklin's Tower"; -- three-song chainOrder and limit
SHOWS FROM 1977 ORDER BY DATE;
SHOWS FROM 1977 ORDER BY DATE DESC; -- newest first
SHOWS FROM 77-80 LIMIT 10;Output formats
SHOWS FROM 1977 LIMIT 3; -- default format
SHOWS FROM 1977 LIMIT 3 AS TABLE;
SHOWS FROM 1977 LIMIT 3 AS JSON;
SHOWS FROM 1977 LIMIT 3 AS CSV;
SHOWS FROM 1977 LIMIT 3 AS SETLIST; -- inline setlistsAS SETLIST expands each show inline with its full setlist — handy for quick browsing without a follow-up SETLIST FOR call.
Tips
- Combine
ATandFROMto narrow fast. A city + a year is usually a few dozen shows at most. LIMITis your friend. Without it, queries against the full archive can return thousands of rows.- The order of
AT,FROM, andWHEREdoesn’t matter — pick whatever reads best. - Use
AS JSONorAS CSVto pipe results into other tools.
Try in Sandbox · Scarlet→Fire · AS JSON