Pergunta

Estou no processo de atualizar alguns aplicativos internos do ADS 7.1 a 8.1.

Foi -me dito um tempo atrás que há mudanças nos valores de retorno do AVG() Função e alguns cálculos de divisão, mas não consigo encontrar nenhuma documentação sobre essas alterações.

Alguém sabe do que estou falando ou tem um link que explica os detalhes?

Foi útil?

Solução

O tópico "Efeitos da atualização da versão 8.1" no arquivo de ajuda tem um pequeno parágrafo sobre a alteração, mas não entra em detalhes.

Basicamente, a partir da versão 8.1 vantagem agora adere ao padrão SQL em relação à divisão inteira. As expressões de divisão inteira têm a parte fracionária truncada, onde no passado eles resultariam em um resultado de ponto flutuante.

Para abordar essa alteração, pode ser necessário lançar determinadas expressões se você ainda deseja que elas resultem em um tipo de dados de ponto flutuante. Por exemplo:

Este:

select int1 / int2 from mytable;

Precisaria mudar para:

select cast( int1 as sql_float ) / int2 from mytable;
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top