通过尝试将水晶报表公式转换为SQL表达式,我似乎很难理解"total_pallet_weight“和"order_no”的概念,使用“立方英尺”和"order_no“公式中的”和“。我想,通过下面的尝试,我将从一个"total_pallet_weight“的情况开始,然后有一个立方英尺的子大小写来表示公式中的"AND”。但我不太熟悉语法"({a_ras_shipping_order_PCF_vw.total_pallet_weight},{a_ras_truck_shipment_vw.order_no}> 0“是如何工作的。论坛是说“总托盘重量+ order_no > 0”吗?
IF Sum ({a_ras_shipping_order_PCF_vw.total_pallet_weight},
{a_ras_truck_shipment_vw.order_no}) > 0
AND Sum ({a_ras_shipping_order_PCF_vw.cubic_feet},
{a_ras_truck_shipment_vw.order_no}) > 0
THEN
Sum ({a_ras_shipping_order_PCF_vw.total_pallet_weight},
{a_ras_truck_shipment_vw.order_no})
/Sum ({a_ras_shipping_order_PCF_vw.cubic_feet},
{a_ras_truck_shipment_vw.order_no})
ELSE 0CASE WHEN (SUM(TCT.[weight]) + SUM(TPM.[weight])) > 0
THEN
,CASE WHEN (SUM(CONVERT(DECIMAL(10,4), (TRCB.skid_height_inches *
TPM.dim_ext_x * TPM.dim_ext_y) / 1728))) > 0
THEN (SUM(TCT.[weight]) + SUM(TPM.[weight])) +
(SUM(CONVERT(DECIMAL(10,4), (TRCB.skid_height_inches *
TPM.dim_ext_x * TPM.dim_ext_y) / 1728)))
ELSE 0
END
ELSE 0
END AS 'Total_PCF'用于“总托盘重量”的
SUM (TCT.[weight]) + SUM(TPM.[weight]) AS 'Total_Pallet_Weight'用于“立方英尺”的
CASE WHEN TRCB.skid_height_inches > 0 AND TPM.dim_ext_x > 0 AND
TPM.dim_ext_y > 0
THEN CONVERT(DECIMAL(10,4), (TRCB.skid_height_inches * TPM.dim_ext_x *
TPM.dim_ext_y) / 1728)
ELSE 0 END AS 'cubic_feet',发布于 2017-05-18 13:24:19
看起来,与公式不同,"order_no“似乎不是用于CASE表达式的引用。通过做一些小的调整,并将我的"+“替换为"/”,我得到了正确的结果。
CASE WHEN (SUM(TCT.[weight]) + SUM(TPM.[weight])) > 0
THEN
CASE WHEN (SUM(CONVERT(DECIMAL(10,4), (TRCB.skid_height_inches *
TPM.dim_ext_x * TPM.dim_ext_y) / 1728))) > 0
THEN (SUM(TCT.[weight]) + SUM(TPM.[weight])) /
(SUM(CONVERT(DECIMAL(10,4), (TRCB.skid_height_inches *
TPM.dim_ext_x *
TPM.dim_ext_y) / 1728)))
ELSE 0
END
ELSE 0
END AS 'TOTAL_PCF'https://dba.stackexchange.com/questions/173935
复制相似问题