2009-06-16 41 views
2

我正在將幾個內部應用程序從ADS 7.1升級到8.1。優勢8.1和7.1

我被告知一段時間AVG()函數的返回值以及一些除法計算有變化,但我找不到有關這些變化的任何文檔。

有沒有人知道我在說什麼,或者有鏈接解釋細節?

回答

4

幫助文件中的「升級到版本8.1的影響」主題有一個關於更改的小段落,但沒有涉及任何細節。

基本上,從版本8.1開始,優勢現在遵循SQL標準關於整數除法。整數除法表達式的小數部分被截斷,過去它們會導致浮點結果。

要解決此更改,如果您仍然希望它們導致浮點數據類型,則可能必須轉換某些表達式。例如:

此:

select int1/int2 from mytable; 

需要改變到:

select cast(int1 as sql_float)/int2 from mytable; 
+0

謝謝傑里米。非常豐富。這是否也會影響avg函數的結果?任何受此「新數學」影響的其他功能?平均值爲 – KOGI 2009-06-18 16:44:44