0
I持つSQL Serverで、SELECT、次のエラーが返され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
しかし:
メッセージ8115、レベル16、状態2、行2 算術オーバーフローエラー式をデータ型intに変換します。
どうすればよいですか?あなたの番号が5桁よりも大きいので、
'th.PlacasLidas'と' th.Trafego'のデータ型は何ですか? – ughai
CONVERT文を削除すると、どのような値が返されますか?おそらく、あなたが変換している小数点のサイズはおそらくあなたの結果には小さすぎると思いますか? –
"CONVERT(DECIMAL(5,2)、(SUM(th.PlacasLidas)/ SUM(th.Trafego)))* 100)"と表示されます。ブレーク&デバッグ... – Aditya