%20%E8%B3%87%E6%96%99%E9%A1%9E%E5%9E%8B%E8%80%8C%E4%B8%8D%E9%81%BA%E5%A4%B1%E7%B2%BE%E7%A2%BA%E5%BA%A6.png)
使用資料類型 Decimal(26,11) 的欄位從 Excel 查詢到 SQL Server 資料庫。也就是說,小數點前26位,加上小數點後11位。例如:
12345678901234567890123456.12345678901
即使該列預先格式化為文本,Excel 也會將其截斷為 15 位有效數字。在這個例子中:
12345678901234500000000000.00000000000
我們怎麼能讓 Excel 停止將它們截斷為 15 位元有效數字?
順便說一句,我們確實知道,我們無法在不損失精度的情況下對 Excel 中的數字進行數學運算。我們只想將它們作為 Excel 中的文字獲取,從 SQL Server 中查詢資料類型為 Decimal(26,11) 的欄位。有什麼建議麼?
答案1
使用 12345678901234567890123456.12345678901 效果很好,因為我的系統小數分隔符號是“,”而不是“.”。因此,一個愚蠢的解決方案是選擇並改變它。
如果可能的話,您可以嘗試'
在數字前面添加,以防止它這樣做。