簡體   English   中英

SQL除以列的值,除非值為0

[英]SQL Divide values of columns UNLESS a value is 0

我正在努力解決如何'錯誤處理'這樣的以下SQL。

作為我的SELECT語句的一部分,我有

((sp.sp_retailprice - sp.sp_wholesaleprice_l1) / (sp.sp_wholesaleprice_l1))  as 'calc test'

從另一列中減去一列然后將結果除以sp_wholesaleprice_l1列。

但是,sp_wholesaleprice_l1的值有時為0.00,查詢返回預期結果,直到達到0.00並且我得到除以0的錯誤。

我如何進行查詢,以便如果我在sp_wholesaleprice_l1列中有0.00,它會執行不同的操作...例如將0替換為1?

非常感謝 :)

(
(sp.sp_retailprice - sp.sp_wholesaleprice_l1) /
(CASE WHEN sp.sp_wholesaleprice_l1 = 0 THEN 1 ELSE sp.sp_wholesaleprice_l1 END)
)  as 'calc test'

更多關於CASE

http://msdn.microsoft.com/en-us/library/ms181765.aspx

暫無
暫無

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

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