2017-08-24 20 views
0
select Pending = PD.Qty - (select sum(GRND.Qty) 
from tbl_GRN GRN inner join tbl_GRND GRND on 
GRN.grnId = GRND.grnId where GRN.pivID=PD.pivID and GRND.prodId=PD.prodId) 
from tbl_PD PD where PD.pivId=10609 

Hai,我們正在開發一個庫存維護項目。 以上是我使用的查詢來獲取產品的待處理數量的查詢。該查詢提供了所需的結果。但PD.Qty和GRND.Qty可能有不同的規模(單位)。所以我們正在使用轉換比例的矢量函數ConvertScale。其參數爲ConvertScale(@Qty, @InputScale, @OutputScale),並返回OutputScale中的值。sql中的sclar-valued函數

裏添加

ConvertScale(@GRND.Qty, @GRND.ScaleID, @PD.ScaleID) 

請告訴我修改查詢進行。

+1

標記你正在使用的dbms。 (該代碼是特定於產品的。) – jarlh

+0

您正在使用哪個[DBMS](https://en.wikipedia.org/wiki/DBMS)? Postgres的?甲骨文? –

回答

0

請勿使用@前綴列。我猜你是在查詢後

select Pending = PD.Qty - 
    (select sum(ConvertScale(GRND.Qty, GRND.ScaleID, PD.ScaleID)) 
    from tbl_GRN GRN 
    inner join tbl_GRND GRND on GRN.grnId = GRND.grnId 
    where GRN.pivID=PD.pivID and GRND.prodId=PD.prodId) 
from tbl_PD PD where PD.pivId=10609