`

PostgreSQL 实现累加

阅读更多
exchange=# select invoice_id, client_id , total_amount,invoice_end   from  invoice   order by invoice_id ;
 invoice_id | client_id | total_amount |      invoice_end       
------------+-----------+--------------+------------------------
         31 |         1 |     14.06202 | 2010-12-20 00:00:00+00
         71 |         4 |    -45.25617 | 2010-12-20 00:00:00+00
         75 |         3 |      2.52500 | 2010-12-17 00:00:00+00
         76 |         3 |      9.36850 | 2010-12-18 00:00:00+00
         77 |         3 |     34.40367 | 2010-12-19 00:00:00+00
         78 |         3 |      0.00000 | 2010-12-20 00:00:00+00
(6 rows)

exchange=# 


现在将 total_amount累加
exchange=# select                                                                                         
 invoice.invoice_id, invoice.client_id ,invoice. total_amount,invoice.invoice_end,
 (select sum(total_amount) as past_due from invoice as inner_invoice where client_id = invoice.client_id and inner_invoice.invoice_end <= invoice.invoice_end) as grand_total
 from invoice  order  by invoice.invoice_id;
 invoice_id | client_id | total_amount |      invoice_end       | grand_total 
------------+-----------+--------------+------------------------+-------------
         31 |         1 |     14.06202 | 2010-12-20 00:00:00+00 |    14.06202
         71 |         4 |    -45.25617 | 2010-12-20 00:00:00+00 |   -45.25617
         75 |         3 |      2.52500 | 2010-12-17 00:00:00+00 |     2.52500
         76 |         3 |      9.36850 | 2010-12-18 00:00:00+00 |    11.89350
         77 |         3 |     34.40367 | 2010-12-19 00:00:00+00 |    46.29717
         78 |         3 |      0.00000 | 2010-12-20 00:00:00+00 |    46.29717
(6 rows)

exchange=# 

grand_total为累加的字段
分享到:
评论

相关推荐

    postgresql 实现c language外部函数调用

    在PostgreSQL中,有时需要利用C语言来编写高性能或安全的关键功能,这可以通过创建外部函数实现。本教程将详细介绍如何在PostgreSQL中实现C语言外部函数的调用,包括环境配置、源代码编写、编译、创建函数以及测试...

    PostgreSQL IF/IFNULL 函数 内核开发

    1. 博客:PostgreSQL的学习心得和知识总结(六十七)|语法级自上而下完美实现MySQL数据库的 IF函数和IFNULL函数 的实现方案

    PostgreSQL中文手册9.2

    PostgreSQL中文学习手册 PostgreSQL PostgreSQL PostgreSQL学习手册 学习手册 学习手册 (数据表 数据表 ) 4 一、表的定义: 一、表的定义: 一、表的定义: . 4 PostgreSQL PostgreSQL PostgreSQL学习手册 学习手册...

    postgresql+postgis安装和空间数据的导入

    PostgreSQL与PostGIS的安装和空间数据导入 PostgreSQL是一个功能强大且开源的关系数据库管理系统,而PostGIS则是一个基于PostgreSQL的空间数据库扩展,提供了对空间数据的支持。在本文中,我们将介绍如何安装...

    Postgresql连接oracle驱动并实现读写

    ### Postgresql连接Oracle数据库并通过oracle_fdw驱动实现读写操作 #### 一、概述 本文档将详细介绍如何在CentOS 6.2环境下通过PostgreSQL 9.5.6使用`oracle_fdw`驱动程序来连接Oracle 11.2客户端,并实现数据的...

    PostgreSQL find_in_set 内核开发

    博客:PostgreSQL的学习心得和知识总结(六十五)|关于PostgreSQL数据库 实现MySQL数据库find_in_set()函数 的实现方案

    支持ado实现postgresql的npgsql .net4.0包

    标题中的“支持ado实现postgresql的npgsql .net4.0包”指的是Npgsql,这是一个针对PostgreSQL数据库的.NET数据提供程序。Npgsql是完全开源的,它实现了ADO.NET接口,使得.NET开发者能够方便地在PostgreSQL数据库上...

    PostgresQL8.3中文文档

    流式复制支持异步和同步模式,可以实现低延迟的数据复制。 2. **触发器复制**: 虽然不是8.3版的新特性,但在此版本中仍然可用。通过设置触发器,当主服务器上的数据发生变化时,会触发复制过程。然而,这种方法效率...

    PostgreSQL实现交叉表(行列转换)的5种方法示例

    在PostgreSQL中,我们可以使用多种方法来实现交叉表,这有助于我们更好地理解和分析数据。以下将详细介绍5种在PostgreSQL中创建交叉表的方法。 1. **标准SQL查询**: 这是最基础的方法,通过使用`CASE`语句和`...

    DB2到GreenPlum/PostgreSQL的转换指南

    此外,还需要注意的是,DB2有一些内置的函数和操作用于处理特殊数据类型,而在GreenPlum/PostgreSQL中可能没有直接等价的功能,这可能需要编写自定义函数来实现。 ###### 2.2.3 表约束 表约束在DB2与GreenPlum/...

    PostgreSQL(postgresql-14.1.tar.bz2)

    PostgreSQL(postgresql-14.1.tar.bz2) PostgreSQL是一种特性非常齐全的自由软件的对象-关系型数据库管理系统(ORDBMS),是以加州大学计算机系开发的POSTGRES,4.2版本为基础的对象关系型数据库管理系统。...

    PostgreSQL(postgresql-14.1.tar.gz)

    PostgreSQL(postgresql-14.1.tar.gz) PostgreSQL是一种特性非常齐全的自由软件的对象-关系型数据库管理系统(ORDBMS),是以加州大学计算机系开发的POSTGRES,4.2版本为基础的对象关系型数据库管理系统。POSTGRES...

    PostgreSQL数据库内部原理剖析 PDF

    A Tour of PostgreSQL Internals.pdf Inside the PostgreSQL Query Optimizer.pdf Inside the PostgreSQL Shared Buffer Cache.pdf Internals Of PostgreSQL Wal.pdf PostgreSQL Internals Through Pictures.pdf ...

    PostgreSQL(postgresql-13.5.tar.bz2)

    PostgreSQL(postgresql-13.5.tar.bz2) PostgreSQL是一种特性非常齐全的自由软件的对象-关系型数据库管理系统(ORDBMS),是以加州大学计算机系开发的POSTGRES,4.2版本为基础的对象关系型数据库管理系统。...

    连接postgresql数据库需要的jar包

    在Java中,JDBC驱动是实现Java标准API(java.sql)的类库,它允许Java应用程序执行SQL语句并与各种数据库进行交互,包括PostgreSQL。 PostgreSQL是一种开源的关系型数据库管理系统(RDBMS),以其强大的功能、稳定...

    PostgreSQL JDBCL连接:postgresql-42.2.5.jar包.zip

    对于PostgreSQL数据库,我们需要一个特定的JDBC驱动来实现这种连接。在本篇中,我们将深入探讨如何使用`postgresql-42.2.5.jar`这个PostgreSQL JDBC驱动包来建立和管理与PostgreSQL数据库的连接。 **1. PostgreSQL ...

    Postgresql-10安装包

    **PostgreSQL 10 安装指南** PostgreSQL 是一款强大的开源关系型数据库管理系统,具有高度的稳定性和可扩展性,被广泛应用于各种规模的企业和项目。本文将详细介绍如何使用提供的 PostgreSQL-10 安装包进行安装,...

    SpringBoot连接PostgreSql三层架构实现增改删

    在本项目中,我们主要探讨如何使用SpringBoot与MyBatis框架来构建一个基于PostgreSQL数据库的三层架构应用,实现数据的增、删、改、查功能。首先,让我们逐一了解涉及的关键技术点。 1. **SpringBoot**: ...

    postgresql-42.3.3.jar

    `postgresql-42.3.3.jar` 提供了对PostgreSQL的JDBC驱动实现,使得Java开发者可以利用JDBC API来执行诸如建立数据库连接、执行SQL查询、处理结果集等任务。 在使用`postgresql-42.3.3.jar`之前,你需要将其添加到你...

    Postgresql修炼之道 pdf

    9. 备份与恢复策略:合理安排备份计划,能够使用pg_dump工具进行逻辑备份,或者使用文件系统备份方式实现物理备份。了解如何在出现问题时,利用备份数据进行恢复,是数据库管理的必备知识。 10. 监控与日志分析:...

Global site tag (gtag.js) - Google Analytics