簡體   English   中英

帶有計算字段的 SQL 連接表

[英]SQL Join table with calculated fields

我想向此查詢添加另一列以顯示需要處理的延期交貨。

目前,該表顯示了所有具有未完成項目的訂單以及每個庫存參考的庫存數量。

我想為建議的發票金額添加一個字段。 即如果訂單數量是 5 ,發票數量是 2 並且庫存數量是 2 則建議交付 2。

如果庫存量為 100,則建議交付 3。

我目前的嘗試如下,但我無法弄清楚如何做最后一點。

我知道我需要做 (qtyOrdered-qtyinvoiced),但實際上撞到了磚牆。

SELECT 
    c.cus_name,
    ol.orderLines_stockRef,
    ol.orderLines_qtyOrdered,
    ol.orderlines_qtyInvoiced,
    pr.products_instock
FROM
    cus c
        JOIN
    orderheader oh ON oh.orderHeader_customer = c.cus_id
        JOIN
    orderlines ol ON ol.orderLines_orderId = oh.orderHeader_id
        JOIN
    products pr ON ol.orderlines_stockref = pr.products_reference
WHERE
    ol.orderLines_qtyOrdered <> ol.orderlines_qtyInvoiced

電流輸出:

輸出

嘗試這個:

SELECT 
    c.cus_name,
    ol.orderLines_stockRef,
    ol.orderLines_qtyOrdered,
    ol.orderlines_qtyInvoiced,
    pr.products_instock,
    (CASE WHEN ol.orderLines_qtyOrdered - ol.orderlines_qtyInvoiced > pr.products_instock
          THEN pr.products_instock
          ELSE ol.orderLines_qtyOrdered - ol.orderlines_qtyInvoiced) AS qtyToSend,
FROM
    cus c
        JOIN
    orderheader oh ON oh.orderHeader_customer = c.cus_id
        JOIN
    orderlines ol ON ol.orderLines_orderId = oh.orderHeader_id
        JOIN
    products pr ON ol.orderlines_stockref = pr.products_reference
WHERE
    ol.orderLines_qtyOrdered <> ol.orderlines_qtyInvoiced

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM