我有一个名为“detail_transaksi”的表。我想对“jumlah”列中的所有数据求和,其中“debit_kredit”='D'被分组在相同的“kode_akun”数据中。此外,我想对“jumlah”列中的所有数据求和,其中“debit_kredit”='K'被分组在相同的“kode_akun”数据中。然后,我想减去他们两个。我怎样才能在 SQL 或 PHP 中做到这一点?这是我表中的列:idkode_transaksikode_akundebit_kreditjumlah
3 回答
慕妹3146593
TA贡献1820条经验 获得超9个赞
您可以使用条件聚合:
select kode_akun,
sum(case when debit_kredit = 'K' then jumlah
when debit_kredit = 'D' then - jumlah
end)
from detail_transaksi
group by kode_akun;
慕婉清6462132
TA贡献1804条经验 获得超2个赞
您可以使用 GROUP BY debit_kredit 按 debit_kredit 值对记录 SUM 进行分组,之后,您可以对数据进行减法或任何您想做的事情。
SELECT debit_kredit , SUM(jumlah) AS total_sum FROM detail_transaksi GROUP BY debit_kredit
MM们
TA贡献1886条经验 获得超2个赞
您需要在 debit_kredit 中对 K 和 D 求和
以下应该实现这一点。
SELECT
kode_akun,
SUM(CASE WHEN debit_kredit='K' then jumlah else 0 end) as jumlah_k,
SUM(CASE WHEN debit_kredit='D' then jumlah else 0 end) as jumlah_d,
FROM detail_transaksi GROUP BY kode_akun
至于 jumlah_k 和 jumlah_d 之间的区别,你必须减去求和表达式,这是相当低效的,我建议你在 php 中这样做
- 3 回答
- 0 关注
- 117 浏览
添加回答
举报
0/150
提交
取消