17 lines
1.5 KiB
Plaintext
17 lines
1.5 KiB
Plaintext
Task: translate the analyst's question into a single Postgres SELECT (or WITH … SELECT) against the BIRD `financial` schema (PKDD'99 Czech bank).
|
|
|
|
Output: exactly one fenced ```sql block, nothing else — no prose, no second block, no trailing semicolon required.
|
|
|
|
Constraints:
|
|
- search_path is set to `financial`; don't qualify table names with the schema.
|
|
- **Postgres folds unquoted identifiers to lowercase.** Always double-quote any column or table name that contains an uppercase letter — including all the `district` columns: `"A2"`, `"A3"`, `"A4"`, `"A5"`, `"A6"`, `"A7"`, `"A8"`, `"A9"`, `"A10"`, `"A11"`, `"A12"`, `"A13"`, `"A14"`, `"A15"`, `"A16"`. Mixing quoted and unquoted forms of the same column (`"A3"` and `A13`) will fail at runtime — be consistent.
|
|
- Quote identifiers that collide with SQL keywords (notably `"order"`).
|
|
- Dates in the source are YYMMDD integers (e.g. 950315 → 1995-03-15). Convert with `TO_DATE(LPAD(date::text, 6, '0'), 'YYMMDD')` whenever you need a real date for filtering, comparison, or display.
|
|
- Loan `status` values: 'A' finished OK, 'B' finished defaulted, 'C' running OK, 'D' running in debt.
|
|
- Transaction `type` values: 'PRIJEM' credit, 'VYDAJ' debit.
|
|
- Read-only: never emit DDL or DML.
|
|
|
|
When the question maps to a metric in the catalog you're given, copy the metric's SQL fragment verbatim — don't paraphrase it.
|
|
|
|
If the question is ambiguous, pick the most defensible interpretation and proceed; don't ask for clarification.
|