Est-ce que quelqu'un sait si les normes SQL définissent et PostgreSQL implémentera (10.x ou plus) Parametric Window Size?Taille de fenêtre paramétrique PostgreSQL
Bellow un MVE de ce que j'appelle une taille de fenêtre paramétrique:
WITH
D AS (SELECT T.x::FLOAT FROM generate_series(0., 10., 0.1) AS T(x)),
W AS (SELECT 10 AS WindowSize)
SELECT
D.x
,AVG(D.x) OVER (ROWS BETWEEN W.WindowSize PRECEDING AND CURRENT ROW)
FROM
D, W;
Ce qui soulève l'erreur suivante:
ERROR: argument of ROWS must not contain variables
LINE 8: ,AVG(D.x) OVER (ROWS BETWEEN W.WindowSize PRECEDING AND C...
^
********** Error **********
ERROR: argument of ROWS must not contain variables
SQL State: 42P10
Je comprends la fenêtre paramétrique est un peu complexe à mettre en œuvre. Et je sais que je peux contourner certains aspects de cette limitation en utilisant Dynamic Query et PL/PGSQL.
Mes questions sont les suivantes:
- Des normes SQL définissent une telle chose? Est-ce que PostgreSQL l'implémentera (si oui, quand est-il prévu)?
- Si non, quelles sont les limitations à surmonter avant d'avoir une telle fonctionnalité?
Cela ne peut pas être si difficile à implémenter - au moins pour "ROWS". Il est assez facile d'obtenir la fonctionnalité par d'autres moyens, mais ce n'est pas votre question. –