Reference
Error Handling and Supported Constraints
The tests cover several user-facing validation behaviors:
Guide
The tests cover several user-facing validation behaviors:
SQL Shape
Rejected examples:
sql
SELECT value FROM input
SELECT value INTO output FROM input, other
SELECT *, value INTO output FROM input
SELECT field1..field2 INTO output FROM input
SELECT field1.field2 AS a.b INTO output FROM input
SELECT value AS [a..b] INTO output FROM inputWindow Compute
Rejected examples:
sql
SELECT * INTO output
FROM input
WINDOW BY TumblingWindow(Duration(minute, 1))
COMPUTE avg = AVG(value)
WHERE value > avgReason: `WINDOW BY` requires `TIMESTAMP BY`.
sql
SELECT * INTO output
FROM input TIMESTAMP BY ts
COMPUTE avg = AVG(value)
WHERE value > avgReason: `COMPUTE` requires `WINDOW BY`.
sql
SELECT * INTO output
FROM input TIMESTAMP BY ts
WINDOW BY TumblingWindow(Duration(minute, 1))
WHERE value > 10Reason: `WINDOW BY` requires `COMPUTE`.
sql
SELECT * INTO output
FROM input TIMESTAMP BY ts
WINDOW BY TumblingWindow(Duration(minute, 1))
COMPUTE avgPlusValue = AVG(value) + value
WHERE value > avgPlusValueReason: a `COMPUTE` expression must be an aggregate or derived from aggregates.
MATCH_RECOGNIZE
Rejected examples include:
- Missing `LIMIT Duration(...)`.
- Missing `AFTER MATCH SKIP TO NEXT ROW`.
- `ALL ROWS PER MATCH`.
- `AFTER MATCH SKIP PAST LAST ROW`.
- Missing `DEFINE` for a pattern variable.
CLI
Rejected examples include:
bash
chronusql --follow query.sqlReason: follow and tail modes require file inputs.
bash
chronusql --query "SELECT value FROM input" --input first=- --input second=-Reason: only one input may use stdin.
bash
chronusql --query "SELECT value FROM input" --output first=- --output second=-Reason: only one output may use stdout.