Как решить проблему деления на ноль?
Я пытаюсь рассчитать процент прибыли, но получаю ошибку деления на ноль.Я новичок и перепробовал почти все форумы, но не смог найти решения.Я использую SQL Server.
Пожалуйста, помогите мне, где я делаю ошибку?
SELECT
SO_VInv.AccountNo, SUM(SO_VInv.LineCost) AS "Cost Price",
COUNT(SO_VInv.QuantityThisDel) AS Quantity, COUNT(SO_VInv.InvoiceNo) AS "Number of Invoices",
SUM(SO_VInv.CurrentLineTotal) AS "Sale Price", SUM(SO_VInv.CurrentLineTotal) - SUM(SO_VInv.LineCost) - SUM(SO_VInv.TaxToCharge) AS "Gross Profit",
SUM(SO_VInv.CurrentLineTotal) - SUM(SO_VInv.LineCost) - SUM(SO_VInv.TaxToCharge) / (SUM(SO_VInv.LineCost) - SUM(SO_VInv.TaxToCharge)
FROM
SO_VInv
WHERE
InvDate >= '2019-01-01'
GROUP BY
SO_VInv.AccountNo
Выше строки работают нормально, но эта часть вызывает проблему
SUM(SO_VInv.CurrentLineTotal) - SUM(SO_VInv.LineCost) - SUM(SO_VInv.TaxToCharge) / (SUM(SO_VInv.LineCost) - SUM(SO_VInv.TaxToCharge)
FROM
SO_VInv
WHERE
InvDate >= '2019-01-01'
GROUP BY
SO_VInv.AccountNo
Я пытался решить эту проблему, как это, но все еще получаю ошибки
DECLARE @SalePrice DECIMAL
DECLARE @Tax DECIMAL
DECLARE @CostPrice DECIMAL
DECLARE @Profit DECIMAL
DECLARE @Quantity DECIMAL
DECLARE @Final DECIMAL
SET @SalePrice = (SELECT(SUM(SO_VInv.CurrentLineTotal)) FROM SO_VInv )
SET @Tax = (SELECT(SUM(SO_VInv.TaxToCharge)) FROM SO_VInv )
SET @CostPrice = (SELECT(SUM(SO_VInv.LineCost)) FROM SO_VInv )
SET @Profit = (SELECT(@SalePrice-@Tax) FROM SO_VInv )
SET @Quantity = (SELECT COUNT(SO_VInv.QuantityThisDel)FROM SO_VInv )
SET @Final = (SELECT @SalePrice AS "SalePrice"
FROM SO_VInv
WHERE InvDate >= '2019-01-01'
GROUP BY SO_VInv.AccountNo)
SELECT @Final
Делить на ноль ошибок
Я пробовал много возможных решений, которые я нашел в Интернетевключая метод объявления и установки переменной и т. д.