我想选择总价的比例或id_lot制定的id_programme: 这是表格:
id_lot | id_programme | surface | prix
--------+--------------+---------+------
101 | 1 | 30 | 180
201 | 1 | 30 | 185
391 | 2 | 40 | 145
我尝试过这个:
select id_lot,id_programme ,
ratio_to_report(sum(prix)) over(partition by id_programme) as
ratio
from t
group by id_lot,id_programme;;
我收到此错误:
选择id_lot,id_programme,ratio_to_report(sum(prix))over(... ^ 提示:没有函数匹配给定的名称和参数类型。您可能需要添加显式类型转换。
答案 0 :(得分:0)
您可以显式进行ratio_to_report()
的计算。这行得通吗?
select id_lot, id_programme,
sum(prix) / sum(sum(prix)) over (partition by id_programme) as ratio
from t
group by id_lot, id_programme;
Here是使用Postgres的db <>小提琴。