On s’assure que les divisions SQL se font sur des flottants
On a observé une régression sur les divisions suite à insitu!1450 (merged)
Avant on convertissait automatiquement le numérateur en flottant :
>>> parse_one("SELECT SUM(a) / SUM(b)").sql(dialect="postgres")
'SELECT CAST(SUM(a) AS DOUBLE PRECISION) / SUM(b)'
Maintenant ce n’est plus le cas, et Postgres fait une division entière dont le résultat est zéro :
>>> parse_one("SELECT SUM(a) / SUM(b)", dialect="postgres").sql(dialect="postgres")
'SELECT SUM(a) / SUM(b)'
Au passage on homogénise un peu la manière de faire des arrondis.