我已經在MS Access和SQL Server中使用相同的確切數據運行StDev函數。兩條數據2.32和2.32應該導致StDev爲0,這是SQL Server生成的結果。 MS Acccess生成以下結果... 4.2146848510894E-08。這對我的數據庫邏輯提出了嚴重的問題,但是我對如何解決這個問題並不感興趣,而是如果其他人遇到類似的問題,並且如果有人知道爲什麼會計算出不同的結果?生成不同結果的SQL Server和MS Access Standard Deviation(StDev)函數
2
A
回答
2
StDev()
函數返回值爲Double
,因此如果在執行比較的表達式中使用這些值,則必須考慮浮點錯誤。具體而言,在檢查確切的相等性時(例如,myStDevValue=0
),絕不應使用Double
值。相反,你應該無論是
- 值被「足夠接近」被認爲是平等的,
或檢查標準偏差的具體情況
- 值是足夠大於(或小於)被認爲重要(或不顯着)的平均值的特定部分。
1
首先,確保您在兩個系統中使用適當的數據類型。
其次,您可能會遇到MS Excel所面臨的相同精度問題。參見this discussion,this MS Support article和detailed explanation on Wikipedia。
爲什麼區別?這兩個系統是根據不同規格&要求開發的。
相關問題
- 1. Javascript等價於MS Excel Standard Deviation(STDEV)
- 2. Java Streams - Standard Deviation
- 3. MS Access Date()函數和SQL Server查詢
- 4. MS Access currentdb.excute與Docmd.RunSQL的結果不同
- 5. SQL Server和MS Access 2016
- 6. 將MS SQL Server查詢結果導出到MS Access
- 7. Microsoft Access SQL STDEV的數據計數
- 8. 可用於SQL Server和MS Access的COALESCE,IFNULL或NZ()函數
- 9. MS Access查詢到SQL Server
- 10. SQL Server AVG和Excel AVERAGE產生不同的結果?
- 11. MS Access MAX和MIN函數沒有返回正確的結果
- 12. MS Access Int和Sql Server Big INT
- 13. MS Access/SQL Server Len()Brain Teaser
- 14. SQL Server Express vs MS Access
- 15. MS Access升級到SQL Server
- 16. 從MS Access移到SQL Server
- 17. MS Access SQL Server數據庫 - CAST函數的查詢語法
- 18. SQL Server中的STDEV和STDEVP算法
- 19. 將MS Access從MS Access遷移到MS SQL Server
- 20. php函數strpos和substr在localhost和server中的不同結果
- 21. 如何在MS SQL Server中使用表函數結果?
- 22. MS Access 2016中的SQL Server LEAD等效函數
- 23. 相同的SQL Server(MS SQL)
- 24. SQL Server Compact與SQL Server和SQL Server Standard有什麼區別?
- 25. 生成生成器和聚合結果的Python函數
- 26. pyodbc&MS SQL Server - 「沒有結果,以前的SQL不是查詢。」
- 27. SQL Server報表生成和。如果
- 28. Access中的SQL和MS SQL Server中的SQL
- 29. POWER函數結果SQL與Excel不同
- 30. 相同的參數化SQL生成SQL返回任何結果