SQL добавление двух столбцов десятичного типа данных - PullRequest
0 голосов
/ 07 сентября 2018

У меня есть два столбца EY_AmountIncl_LC, EY_AmountExcl_LC, которые имеют тип данных decimal(30,2).Я хочу добавить два столбца в результате, но при этом получаю следующий результат

EY_AmountIncl_LC    EY_AmountExcl_LC    result
7000.00000          7000.00000          7000.000007000.00000

два столбца объединяются, но не дают сумму двух столбцов. Желаемый результат равен

EY_AmountIncl_LC    EY_AmountExcl_LC    result
7000.00000          7000.00000          14000.00

Я хочу сгруппировать по номеру поставщика, который является другим столбцом

vendornumber       result
10000064            0.10
10000064            0.10
10000064            2000.00

Мне нужно получить только одну запись с одним примером номера поставщика

vendornumber       result
10000064           sum(0.10+0.10+2000.00)

Ответы [ 2 ]

0 голосов
/ 07 сентября 2018

Преобразовать значение после их добавления:

select cast(EY_AmountIncl_LC + EY_AmountExcl_LC as decimal(30, 2)) as result;

Правила для масштаба и точности результата арифметического выражения на десятичных дробях. , , усложнять. Если вы знаете, какой тип вам нужен, просто приведите результат к соответствующему типу.

0 голосов
/ 07 сентября 2018

ИСПОЛЬЗОВАНИЕ КОНВЕРТ функция

SELECT CONVERT(DECIMAL(18,2),EY_AmountIncl_LC)+
       CONVERT(DECIMAL(18,2),EY_AmountExcl_LC) AS result
FROM TABLE
...