所以,這裏是我的查詢:算術溢出錯誤轉換數字數據類型爲varchar
SELECT '$'
+ CONVERT(VARCHAR (6), Cast(Avg(TotalPrice) AS NUMERIC (6, 2))) AS 'Average Price',
'$'
+ CONVERT(VARCHAR (6), Cast(Min(TotalPrice) AS NUMERIC (6, 2))) AS 'Minimum Price',
'$'
+ CONVERT(VARCHAR (6), Cast(Max(TotalPrice) AS NUMERIC (6, 2))) AS 'Maximum Price'
FROM Invoice;
的AVG列和MIN列做工精細,但MAX列返回:
「算術溢出錯誤轉換數字以數據類型varchar「
而我不知道爲什麼我得到的錯誤。
爲什麼會出現OP需要改變從NUMERIC聲明( 6,2)至(8,2)? – DeanOC 2014-11-04 03:52:26
在NUMERIC(6,2)中使用(精度= 6) 將存儲的最大小數位總數,小數點的左側和右側。所以精度必須提高。 – 2014-11-04 03:57:42
沒有任何跡象表明MAX(TotalPrice)超過NUMERIC(6,2)。 – DeanOC 2014-11-04 04:10:48