DECLARE @PenjualanKredit TABLE (
Tanggal datetime,
KodeA int,
KodeKredit int,
JmlPenjualanKredit int
)
INSERT INTO @PenjualanKredit SELECT '20090101',1,123,10000
INSERT INTO @PenjualanKredit SELECT '20090101',1,234,5000
INSERT INTO @PenjualanKredit SELECT '20090101',1,124,15000
INSERT INTO @PenjualanKredit SELECT '20090101',2,125,15000
INSERT INTO @PenjualanKredit SELECT '20090101',2,126,10000
;WITH
table1 AS (
SELECT *
,row_number() OVER(partition by KodeA ORDER BY tanggal) AS RowNumber
FROM @PenjualanKredit
)
SELECT a.Tanggal,a.KodeA,a.KodeKredit
,(SELECT sum(b.JmlPenjualanKredit)
FROM table1 b
WHERE a.KodeA=b.KodeA AND a.RowNumber>=b.Rownumber+1)
AS SaldoAwal
,a.JmlPenjualanKredit
,(SELECT sum(b.JmlPenjualanKredit)
FROM table1 b
WHERE a.KodeA=b.KodeA AND a.RowNumber>=b.Rownumber+1)+a.JmlPenjualanKredit AS SaldoAkhir
FROM table1 a
2009/7/13 Budi Sudarsono <budi.sudarsono81@...>
Dear Master Sql
Saya punya data kira2 seperti ini :
tabel penjualankredit
Tanggal kodeA Kodekredit JmlPenjualankredit
01/01/09 1 123 10000
01/01/09 1 234 5000
01/01/09 1 124 15000
01/01/09 2 125 15000
01/01/09 2 126 10000
Output yang saya Inginkan :
tanggal KodeA kodekrdit saldoawal jmlpenjualankredit saldoakhir
01/01/09 1 123 0 10000 10000
01/01/09 1 234 10000 5000 15000
01/01/09 1 124 25000 15000 40000
01/01/09 2 125 0 15000 15000
01/01/09 2 126 15000 10000 35000
mohon pencerahan query untuk persoalan diatas. Terimakasih
--
Regards,
Cahyo Listyanto