从 3 个表中获取数据

Fetch data from 3 Tables

我有 3 张桌子

1 位客户 -c_id -c_name

2 Debit_Master -transaction_id -c_id -金额

3 Credit_Master -transaction_id -c_id -金额

现在我想要这样的数据:每个客户的客户名称和总金额(贷方金额 - 借方金额)。

我想要查询以在我的列表视图中获取包含两列的数据 1- 客户名称,2- 总金额

尝试这样的事情

   SELECT Customers.c_name as name , (Credit_Master.amount - Debit_Master.amount) as total FROM Customers JOIN Debit_Master on Customers.c_id=Debit_Master.c_id JOIN Credit_Master on Customers.c_id=Credit_Master.c_id

试试这个 SQL 语句:

SELECT 
    Customers.c_name as CustomerName, 
    SUM((CASE
           WHEN Credit_Master.amount IS NULL THEN 0 
           ELSE Credit_Master.amount END - 
         CASE 
           WHEN Debit_Master.amount IS NULL THEN 0 
           ELSE Debit_Master.amount END)) as TotalAmount
FROM Customers 
  LEFT JOIN Debit_Master on Customers.c_id = Debit_Master.c_id 
  LEFT JOIN Credit_Master on Customers.c_id = Credit_Master.c_id
GROUP BY Customers.c_id