Оператор +
используется как для сложения, так и для объединения.Если вы смешиваете строки и числа, предполагается добавление, и оно пытается неявно преобразовать строку в число.
Поскольку вы работаете в SQL Server 2008, вы должны сначала преобразовать число в varchar
перед объединением.
CAST(a.taxamount * 100 AS VARCHAR(10)) + '%'
В более поздних версиях вы можете использовать функцию CONCAT
, которая делает это неявно, или использовать FORMAT(a.taxamount, 'P1')
для умножения на 100 и добавления символа процента.