Details
-
Bug
-
Status: Closed
-
Critical
-
Resolution: Fixed
-
1.0.0
Description
It does not seem to be implemented on the drill side. Looks like Calcite specific grammar. Don't see it SQL Standard.
Looks like wrong result:
0: jdbc:drill:schema=dfs> select a2, sum(a2) over(partition by a2 order by a2 rows between 1 preceding and 1 following disallow partial) from t2 order by a2; +-----+---------+ | a2 | EXPR$1 | +-----+---------+ | 0 | null | | 1 | null | | 2 | 6 | | 2 | 6 | | 2 | 6 | | 3 | null | | 4 | null | | 5 | null | | 6 | null | | 7 | 14 | | 7 | 14 | | 8 | null | | 9 | null | +-----+---------+ 13 rows selected (0.213 seconds)
0: jdbc:drill:schema=dfs> select a2, sum(a2) over(partition by a2 order by a2 rows between 1 preceding and 1 following allow partial) from t2 order by a2; +-----+---------+ | a2 | EXPR$1 | +-----+---------+ | 0 | 0 | | 1 | 1 | | 2 | 6 | | 2 | 6 | | 2 | 6 | | 3 | 3 | | 4 | 4 | | 5 | 5 | | 6 | 6 | | 7 | 14 | | 7 | 14 | | 8 | 8 | | 9 | 9 | +-----+---------+ 13 rows selected (0.208 seconds)
0: jdbc:drill:schema=dfs> select a2, sum(a2) over(partition by a2 order by a2 disallow partial) from t2 order by a2; Error: PARSE ERROR: From line 1, column 53 to line 1, column 68: Cannot use DISALLOW PARTIAL with window based on RANGE [Error Id: 984c4b81-9eb0-401d-b36a-9580640b4a78 on atsqa4-133.qa.lab:31010] (state=,code=0)