on dev help sign in
add a test for window function queries
aa082a3Eitan Chatav
squeal-postgresql/src/Squeal/PostgreSQL/Query.hs+12
@@ -310,6 +310,18 @@ let
310in printSQL query
310in printSQL query
311:}
311:}
312WITH "cte1" AS (SELECT * FROM "tab" AS "tab"), "cte2" AS (SELECT * FROM "cte1" AS "cte1") SELECT * FROM "cte2" AS "cte2"
312WITH "cte1" AS (SELECT * FROM "tab" AS "tab"), "cte2" AS (SELECT * FROM "cte1" AS "cte1") SELECT * FROM "cte2" AS "cte2"
313+
314+window function queries
315+
316+>>> :{
317+let
318+ query :: Query '[] (Public Schema) '[] ["col1" ::: 'NotNull 'PGint4, "rank" ::: 'NotNull 'PGint8]
319+ query = select
320+ (List #col1 & Also ((rank `as` #rank) `Over` (partitionBy (#col1 :* Nil) & orderBy [#col2 & Asc])))
321+ (from (table #tab))
322+in printSQL query
323+:}
324+SELECT "col1" AS "col1", rank() OVER (PARTITION BY "col1" ORDER BY "col2" ASC) AS "rank" FROM "tab" AS "tab"
313-}
325-}
314newtype Query
326newtype Query
315 (commons :: FromType)
327 (commons :: FromType)