`

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为累加的字段
分享到:
评论

相关推荐

    postgre中将任意2进制数转换为等效的16进制数的函数

    综上,虽然PostgreSQL没有内建的二进制到十六进制转换函数,我们可以通过编写自定义的SQL函数来实现这一需求。上述提供的函数`bin2hex`就给出了一种可能的实现方式,尽管它依赖于一个未定义的辅助函数`returnto_hex`...

    非常完美Java实现年、月、日、周访问量统计

    同样,月和年的统计可以通过累加每个周期内的访问量实现。 5. **文件读写**:如果你的访问量数据存储在文件中,那么你需要使用`BufferedReader`或`Scanner`来读取文件,`PrintWriter`或`FileWriter`来写入文件。...

    talk-bashtanov-160706213218.pdf

    举例来说,sum和avg函数可以通过输入的值累加求和和计数,进而得出总和和平均值。 接下来,文章详细解释了GroupAggregate和HashAggregate的工作原理和它们之间的区别。GroupAggregate方法主要是通过排序和迭代来...

    购物车原理代码适合所有购物

    对于复杂的应用,可能还需要考虑使用数据库存储,如关系型数据库(MySQL、PostgreSQL)或NoSQL数据库(MongoDB)。 2. **商品对象**:每个商品都是一个对象,包含属性如商品ID、名称、价格、库存等。例如,在Python...

    二手市场管理系统

    购物车中的商品数量计算、价格累加等逻辑也需要精确无误。 最后,给商家留言功能体现了系统的社交特性。这需要一个消息系统,用户可以向商家发送文字、图片甚至视频信息。这涉及到消息队列的设计,如使用RabbitMQ或...

    jasperreport例子下载

    2. **数据源管理**:在iReport中,可以连接到各种数据库(如MySQL、Oracle、PostgreSQL等)作为数据源,或者使用XML、CSV等文件作为数据输入。用户可以编写SQL查询来获取所需的数据。 3. **表达式和变量**:在报表...

    两个结点之间的距离

    5. **路径成本计算**:通常涉及到边的长度或其它属性值的累加,对于理解和优化路径非常重要。 综上所述,通过对给定的SQL查询进行深入分析,我们可以了解到如何利用PostgreSQL与PostGIS插件进行路径分析,特别是在...

    PPHP_introduction_and_application_of_loop.rar_WEB开发_PHP_

    2. **计数和累加**:for循环常用于按步骤执行任务,如计算数字系列或累加变量。 3. **条件判断**:结合if...else语句,可以根据条件决定是否执行循环。 4. **无限循环**:通过设置不正确的终止条件,可以创建无限...

    oracle学习文档 笔记 全面 深刻 详细 通俗易懂 doc word格式 清晰 连接字符串

    PostgreSQL 号称“世界上最先进的开源数据库“,可以运行在多种平台下,是tb级数据库,而且性能也很好 中大型企业 oracle 甲骨文 获得最高认证级别的ISO标准安全认证,性能最高, 保持开放平台下的TPC-D和TPC-C的...

Global site tag (gtag.js) - Google Analytics