請幫我解決下面的問題。在SQL中包含公式選擇查詢
我需要執行計算,同時從表中獲取數據。請幫助我。更多的我也得到了零分。
ISNULL(Round(((col4)/(md.col1 + md.col2 + md.col3)), 2), 0)
由於提前
請幫我解決下面的問題。在SQL中包含公式選擇查詢
我需要執行計算,同時從表中獲取數據。請幫助我。更多的我也得到了零分。
ISNULL(Round(((col4)/(md.col1 + md.col2 + md.col3)), 2), 0)
由於提前
SELECT CASE
WHEN md.col1+md.col2+md.col3 = 0 THEN 0 ELSE
ISNULL(Round(((col4)/(md.col1+md.col2+md.col3)),2),0)
END AS [CALCULATION_RESULT]
這將做trrick。
isnull(Round(((col4)/(NULLIF(md.col1+md.col2+md.col3,0)),2),0)
有關將如何:
WHERE (md.col1 + md.col2 + md.col3) > 0
到您的查詢篩選出DIV0記錄通過空分的時候,你不會得到DIV/0錯誤?
這給出了結果爲零的結果列和更多的即時通訊也獲得「在選擇列表中無效,因爲它不包含在聚合函數或GROUP BY子句」。 – USDOTNetDeveloper 2013-03-18 12:52:34
是的,如果(md.col1 + md.col2 + md.col3)== 0,你會得到0的結果。沒有NULLIF()你會得到div/0錯誤。你沒有說明你期望的是什麼,而不是div/0錯誤,但是NULLIF()肯定是處理這個錯誤的一種方法。 由於GROUP BY錯誤 - 發佈整個查詢,否則很難說是什麼導致了問題。 – 2013-03-18 13:01:14
這是實際查找查詢的鏡像副本選擇ISnull(sum(md.col1 + md.col2 + md.col3),0)作爲'Sum of Columns',ISNULL(sum(md.col4),0)作爲'Total',isnull(Round(((col4)/(md.col1 + md.col2 + md.col3)),2),0)作爲collate來自表2 tbl2內部連接RefTableoftbl2和tbe3 ref Xref.ID = tbl2。 Id內部連接table3上tbl3.Id = ref.ID內部連接table1 tbl1上tbl1.ID = ref.ID和DataEnterdDate ='FEB 2013'組通過table2colname,table3colname order by table3colname,table2Colname – USDOTNetDeveloper 2013-03-18 13:31:55