Domanda

Sono in procinto di aggiornare alcune applicazioni interne da ADS 7.1 a 8.1.

Qualche tempo fa mi è stato detto che ci sono cambiamenti nei valori di ritorno della funzione AVG () così come alcuni calcoli di divisione, ma non riesco a trovare alcuna documentazione su questi cambiamenti.

Qualcuno sa di cosa sto parlando o ha un link che spiega i dettagli?

È stato utile?

Soluzione

Gli effetti " dell'aggiornamento alla versione 8.1 " l'argomento nel file della guida contiene un piccolo paragrafo sulla modifica, ma non entra nei dettagli.

Fondamentalmente, dalla versione 8.1 Advantage ora aderisce allo standard SQL per quanto riguarda la divisione dei numeri interi. Le espressioni di divisione intere hanno la parte frazionaria troncata, dove in passato avrebbero comportato un risultato in virgola mobile.

Per far fronte a questa modifica, potrebbe essere necessario eseguire il cast di determinate espressioni se si desidera che risultino in un tipo di dati in virgola mobile. Ad esempio:

Questa:

select int1 / int2 from mytable;

Dovrebbe cambiare in:

select cast( int1 as sql_float ) / int2 from mytable;
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top