About german-shopping-receipts
A skill for answering grocery questions with Standard SQL against a German shopping receipts table in BigQuery. It guides query construction and requires summaries to document the filters, grouping, and date bounds used.
Key features
- 01Standard SQL query formulation
- 02BigQuery query execution with bq
- 03Receipt counting by store and date
- 04Receipt totals without line-item overcounting
- 05Answer summaries with query scope
Use cases
- 01Compare grocery item prices
- 02Count receipts by supermarket and date
- 03Calculate receipt totals for a chosen period
Install
Copy the command and run it in a terminal.
npx skills add https:/ / github.com/ tejas-kale/ skills --skill german-shopping-receiptsAfter installing, type/german-shopping-receiptsin Claude Code to confirm it loaded.
Details
From the project READMEGerman Shopping Receipts
Answer grocery questions from august-cirrus-399913.economics.german_shopping_receipts using bq.
Process
- Translate the question into one Standard SQL query.
- Run
bq query --nouse_legacy_sql --format=pretty '<sql>'. - Summarise the answer, naming the filters, grouping, and date range it rests on.
Done when the query ran without error and the summary states every filter, grouping, and date bound that shaped the number.
Schema
Reference the table path directly in FROM — no backticks, no escaping.
| Column | Type | Notes |
|---|---|---|
| supermarket | STRING | |
| date | DATE | Purchase date — the one to filter and group on |
| item_name_german | STRING | |
| item_name_english | STRING | |
| price | FLOAT | Per-item price; the column for item-level analysis |
| total_price | FLOAT | Receipt total, repeated on every line item — summing it multiplies by line count |
| inserted_at | TIMESTAMP | Load time, not purchase time |
A receipt is the set of rows sharing a supermarket and date. Count receipts with COUNT(DISTINCT ...) over that pair, and take a receipt total with MAX(total_price) per group.