2017-02-23 44 views
-1
select campo1 as AGR_Number, campo2 as fattura, 
     campo76 as cod_periodo, campo78 as cod_scenario, 
     campo11 as origine, campo8 as Stazione,  
     campo13 as agent, campo30 as AAT_RATE, 
     sum (cast(campo30 as numeric (9,2))) AS AAT_rate 
from map_dati_trasformati 
where cod_mappatura = 'CARICA_NOL_CSV' 
AND CAMPO30 <> 0 
GROUP BY campo1, campo2, campo76, campo78, campo11 , 
     campo8, campo13, campo30 

這種轉換回答我這個錯誤轉換爲varchar值「AAT率」爲int數據類型時錯誤演員轉換SQL

轉換失敗。

是什麼問題?

在此先感謝

彈出的眼睛是AS上盒和同列別名(默認情況下,MySQL是不區分大小寫)
+0

什麼是'campo30' – RiggsFolly

+0

該錯誤意味着你有一個值,不能成爲一些 – JohnHC

+0

的錯誤是相當不言自明的 - 你必須在'campo30'列非數字值,它可以」 t轉換。你應該仔細看看你的數據。 – Siyual

回答

0

唯一的事情。 你能試試嗎?

select campo1 as AGR_Number, campo2 as fattura, 
    campo76 as cod_periodo, campo78 as cod_scenario, 
    campo11 as origine, campo8 as Stazione,  
    campo13 as agent, campo30 as AAT_RATE, 
    sum (cast(campo30 as numeric (9,2))) as AAT_rate_sum 
from map_dati_trasformati 
where cod_mappatura = 'CARICA_NOL_CSV' 
AND CAMPO30 <> 0 
GROUP BY campo1, campo2, campo76, campo78, campo11 , 
     campo8, campo13, campo30 
+0

同樣的錯誤:( –

+0

錯誤是'AAT Rate'沒有'_'所以是不相關和dup別名是好的 –

+0

啊,很好趕上@AlexK。,沒有'_'的錯誤,所以它看起來像你有文字Campo30專欄中'AAT rate'的值 –