我正在撰写查询以获得毛利润百分比" GP%"按产品按年份将某个产品放入C#网格视图中。我希望查询结果是动态的,在某些年份该产品没有销售,因此结果将是(利润/销售)=(0/0)它将为空。这个null不被C#接受。
查询
SELECT
FORMAT((SELECT ((ISNULL(SUM([Profit]), NULL)) / ISNULL(SUM([Sales]), NULL))
FROM [dbo].[Sales]
WHERE [ProdHeir01_2] = 'Batteries'
AND [Sales_Year] = 2015
AND [Month_Number] BETWEEN 1 AND 8, 'P') AS [Percentage]
此查询会导致“无效”。如何插入条件以将null传递给字符串值。所以查询是动态的:)。
提前多多感谢......
此致
答案 0 :(得分:0)
以下是您可能会发现有用的技术:
选择0 / CASE WHEN IsNull([Sales],0)= 0那么1 ELSE [销售] END