PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

cara menghitung saldo di software akuntansi menggunakan fungsi jendela postgres

select t.*, sum("In"-"Out") over(order by id) as balance
from tbl t
order by id

Biola: http://sqlfiddle.com/#!15/97dc5/2/0

Pertimbangkan untuk mengubah nama kolom Anda "Masuk" / "Keluar" sehingga Anda tidak perlu memasukkannya ke dalam tanda kutip. (Itu adalah kata-kata yang dicadangkan)

Jika Anda hanya menginginkan satu pelanggan (customer_id =2):

select t.*, sum("In"-"Out") over(order by id) as balance
from tbl t
where customer_id = 2
order by id

Jika kueri Anda menjangkau beberapa pelanggan dan Anda menginginkan saldo berjalan yang DIMULAI KEMBALI dengan setiap pelanggan, Anda dapat menggunakan:

select t.*, sum("In"-"Out") over( partition by customer_id
                                  order by customer_id, id ) as balance_by_cust
from tbl t
order by customer_id, id



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tidak dapat menginstal PostgreSQL:Terjadi kesalahan saat menjalankan penginstal runtime Microsoft VC++ di Windows XP

  2. bagaimana saya bisa membuat file XML baru dari database yang ada di database PostgreSQL menggunakan java

  3. SQL pilih elemen di mana jumlah bidang kurang dari N

  4. Penyatuan Koneksi PostgreSQL:Bagian 1 – Pro &Kontra

  5. Batasan penurunan PostgreSQL dengan nama yang tidak dikenal