SQL Server требует, чтобы вы повторили выражение в предложении HAVING
(или использовали CTE или подзапрос).У вас нет функций агрегирования, поэтому я предполагаю, что вы намерены:
select round(sum(TaxableAmount), 0) as t,
round(sum(TaxValue*100/TaxPercentage), 0) as t2
from VoucherTaxDetail
where TaxPercentage <> 0 and TaxableAmount > 0 and
TableName in ('TVPayment', 'Payment')
group by transactionId
having round(sum(TaxableAmount), 0) <> round(sum(TaxValue*100/TaxPercentage), 0);