2

我正在将一些内部应用程序从 ADS 7.1 升级到 8.1。

不久前有人告诉我,函数的返回值AVG()以及一些除法计算发生了变化,但我找不到关于这些变化的任何文档。

有谁知道我在说什么或有一个解释细节的链接?

4

1 回答 1

4

帮助文件中的“升级到版本 8.1 的影响”主题有一小段关于更改,但没有详细说明。

基本上,从 8.1 版开始,Advantage 现在在整数除法方面遵循 SQL 标准。整数除法表达式的小数部分被截断,过去它们会导致浮点结果。

要解决此更改,如果您仍希望某些表达式产生浮点数据类型,则可能必须强制转换它们。例如:

这:

select int1 / int2 from mytable;

需要改为:

select cast( int1 as sql_float ) / int2 from mytable;
于 2009-06-17T14:31:53.013 回答