mysql - 在同一查询中从借方列减去贷方?

标签 mysql sql

我有以下查询:

SELECT user_id, SUM( credit ) 作为 cred, SUM( debit ) 作为 deb 从帐户 WHERE user_id = '35'

我想从贷方中减去借方并将其显示在一列中或作为变量中的值

最佳答案

这应该可以工作,并且可能比其他两个 SUM 快一点

SELECT a.user_id, 
       a.cred, 
       a.deb, 
       a.deb - a.cred AS value 
FROM   (SELECT user_id, 
               Sum(credit) AS cred, 
               Sum(debit)  AS deb 
        FROM   account 
        WHERE  user_id = '35') a 

如果你有多个用户,你可以这样做:

SELECT a.user_id, 
       a.cred, 
       a.deb, 
       a.deb - a.cred AS value 
FROM   (SELECT user_id, 
               Sum(credit) AS cred, 
               Sum(debit)  AS deb 
        FROM   account 
        WHERE  user_id IN (35, 36, 39)
        GROUP BY user_id) a 

See the demo

关于mysql - 在同一查询中从借方列减去贷方?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15162286/

相关文章:

mysql - SQL:选择第二个表中不存在的相似行

php - WordPress 中的自定义表查询

Derby 中的sql错误 - ERROR 42X01 : Syntax error: Encountered "KEY"

php - 从购物车创建发票

mysql - 我在哪里可以阅读有关 MySQL 查询的时间复杂度(Big-O 表示法)的信息?

php - 从循环php将一行插入mysql

php - MySQL 查询出错?

mysql - 使用wamp的mysql地址

mysql - 将 sql 文件复制到 Raspberry Pi 上的不同数据库中

php - Laravel Eloquent COUNT(*) 无结果 GroupBy()