0
У меня есть следующие ВЫБРАТЬ в SQL Server:Типы преобразования SQL Server
SELECT
th.CidadeCod,
th.ContratoCod,
CONVERT(DECIMAL(5,2), (SUM(th.PlacasLidas)/SUM(th.Trafego)) * 100) AS [IndiceOCR]
FROM
controle.TrafegoFaixaHora th
INNER JOIN ssis.Contratos c ON th.ContratoCod = c.ContratoCod AND th.CidadeCod = c.CidadeCod
INNER JOIN controle.Equipamentos e ON th.ContratoCod = e.ContratoCod AND th.CidadeCod = e.CidadeCod
WHERE
c.FlagAtivo = 1 AND e.FlagOcr = 1
GROUP BY
th.CidadeCod,
th.ContratoCod
Но возвращается ошибка:
Msg 8115, Level 16, состояние 2, строка 2 арифметическая ошибка переполнения преобразование выражения в тип данных int.
Что мне делать?
Каковы типы данных 'th.PlacasLidas' и' th.Trafego'? – ughai
Если вы удаляете инструкцию CONVERT, какое значение get возвращается? Я думаю, что, возможно, размер десятичной суммы, которую вы конвертируете, слишком мал для вашего результата, возможно? –
перерыв в этой колонке, «CONVERT (DECIMAL (5,2), (SUM (th.PlacasLidas)/SUM (th.Trafego)) * 100)« & попробуйте, для какой операции он показывает ошибку. Break & debug ... – Aditya