SeaQL / sea-query

🔱 A dynamic SQL query builder for MySQL, Postgres and SQLite
https://www.sea-ql.org
Other
1.12k stars 182 forks source link

Invalid window definitions in sqlite #764

Open uttarayan21 opened 5 months ago

uttarayan21 commented 5 months ago

Description

According to the window-defn page in sqlite.org All window definitions in sqlite should have a brace around them but the generated sql for sqlite doesn't do that.

Steps to Reproduce

Use sea_query::query::SelectStatement::window function and build the sql query for sqlite

Expected Behavior

FROM
    "image_metadata" AS "meta"
    INNER JOIN "image_core_metadata" AS "core_meta" ON "meta"."image" = "core_meta"."image"
WHERE
    "meta"."dupe" IS NOT NULL 
WINDOW "d_time" AS (PARTITION BY "meta"."dupe" ORDER BY "core_meta"."timestamp" ASC)

Actual Behavior

FROM
    "image_metadata" AS "meta"
    INNER JOIN "image_core_metadata" AS "core_meta" ON "meta"."image" = "core_meta"."image"
WHERE
    "meta"."dupe" IS NOT NULL 
WINDOW "d_time" AS PARTITION BY "meta"."dupe" ORDER BY "core_meta"."timestamp" ASC

Reproduces How Often

Always reproduced

Versions

Using sea-query 0.30.7

Additional Information

I'll provide a minimal reproducible example soon.