【问题标题】:Subtracting the total quantity of table 1 to table 2将表一的总量减去表二
【发布时间】:2015-05-25 14:20:58
【问题描述】:

伙计们,我在将两个表(DeliveriesReturns)减去 TOTAL_QUANTITY 时遇到这个问题,这些表按 CONTAINER_TYPECUSTOMER_NAME 分组,此示例查询返回 @ 的列 Customer_Balance 987654327@ 如果我减去例如5 - 0,但如果我减去5 -1 它返回4

select TOTAL_DELIVERY.CUSTOMER_NAME,
    TOTAL_DELIVERY.CONTAINER_TYPE,
    coalesce(TOTAL_DELIVERY.TOTAL_QUANTITY, 0) as TOTAL_DELIVERY,
    coalesce(TOTAL_PULLOUT.TOTAL_QUANTITY, 0) as TOTAL_PULLOUT,
    coalesce((TOTAL_DELIVERY.TOTAL_QUANTITY - TOTAL_PULLOUT.TOTAL_QUANTITY), 0) as CUSTOMER_BALANCE
from TOTAL_DELIVERY
left join TOTAL_PULLOUT
on TOTAL_DELIVERY.CUSTOMER_NAME = TOTAL_PULLOUT.CUSTOMER_NAME
and TOTAL_DELIVERY.CONTAINER_TYPE = TOTAL_PULLOUT.CONTAINER_TYPE


Deliveries Table (View)
================
----------------------------------------------
CUSTOMER_NAME| CONTAINER_TYPE | TOTAL_QUANTITY
-------------+----------------+---------------
Bryan        | Slim           | 5
-------------+----------------+---------------
Bryan        | Jug            | 5
-------------+----------------+---------------


Returns Table (View)
=============

CUSTOMER_NAME| CONTAINER_TYPE| TOTAL_QUANTITY
-------------+---------------+---------------
Bryan        | Slim          | 5
-------------+---------------+---------------

Expected output
===============

Customer | Container | Total_Delivery | Total_Return | Customer_Balance |
---------+-----------+----------------+--------------+------------------ 
Bryan    | Slim      | 5              | 5            | 0                |
---------+-----------+----------------+--------------+------------------
Bryan    | Jug       | 5              | 0            | 5                |
---------+-----------+----------------+---------------------------------

My INCORRECT Result output (incorrect result at the bottom right cell)
=========

Customer | Container | Total_Delivery | Total_Return | Customer_Balance |
---------+-----------+----------------+--------------+------------------ 
Bryan    | Slim      | 5              | 5            | 0                |
---------+-----------+----------------+--------------+------------------
Bryan    | Jug       | 5              | 0            | 0                |
---------+-----------+----------------+---------------------------------

你能告诉我我做错了什么吗?谢谢!

【问题讨论】:

    标签: sql netbeans derby javadb


    【解决方案1】:

    (TOTAL_DELIVERY.TOTAL_QUANTITY - TOTAL_PULLOUT.TOTAL_QUANTITY)

    必须是

    (coalesce(TOTAL_DELIVERY.TOTAL_QUANTITY,0) - coalesce(TOTAL_PULLOUT.TOTAL_QUANTITY, 0))
    

    【讨论】:

      猜你喜欢
      • 2020-04-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-09-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多