更新时间:2024-11-12 GMT+08:00
窗口函数查询
窗口函数对数据集中的相关行集执行计算,返回一个结果集。与聚集函数所完成的计算相比,窗口函数并不会使多行被聚集成一个单独的输出行。
--建表并插入数据。 gaussdb=# CREATE TABLE fruit_sale ( "statistical_date" date, "product" varchar(255), "year" varchar(5), "sales_quantity" numeric(8), "amount" numeric(8) ); gaussdb=# INSERT INTO fruit_sale VALUES ('2024-01-01', '西瓜', '2024', 1721, 253541); gaussdb=# INSERT INTO fruit_sale VALUES ('2024-01-01', '苹果', '2024', 5559, 269419); gaussdb=# INSERT INTO fruit_sale VALUES ('2024-02-01', '西瓜', '2024', 4711, 129644); --统计所有水果的销售量。 gaussdb=# SELECT *,SUM(sales_quantity) OVER (PARTITION by null) total_qty FROM fruit_sale; statistical_date | product | year | sales_quantity | amount | total_qty ------------------+---------+------+----------------+--------+----------- 2024-01-01 | 西瓜 | 2024 | 1721 | 253541 | 11991 2024-01-01 | 苹果 | 2024 | 5559 | 269419 | 11991 2024-02-01 | 西瓜 | 2024 | 4711 | 129644 | 11991 (3 rows) --删除。 gaussdb=# DROP TABLE fruit_sale;
父主题: SELECT