SELECT (InvoiceTotal - PaymentTotal - CreditTotal) AS BalanceDue
FROM Invoices
WHERE BalanceDue > 0 --error
Вычисляемое значение "BalanceDue", заданное как переменная в списке выбранных столбцов, не может использоваться в предложении WHERE.
Есть ли способ, которым это возможно? В этом связанном вопросе (Использование переменной в MySQL Select Statment в разделе Where > ) кажется, что ответ будет, фактически, нет, вы просто напишете расчет (и выполнить этот расчет в запросе) дважды, ни один из которых не является удовлетворительным.