Database  »  Articoli  »  MySQL 

Calcoli matematici e MySQL

di: Claudio Garau     23 Giugno 2009

Nelle operazioni di manipolazione dei dati contenuti in una database attraverso interrogazioni in linguaggio SQL, rientrano spesso anche i calcoli matematici; MySQL fornisce per questo scopo il supporto per vari tipi di dato numerici e funzioni appositamente dedicate; ma quanto sono precisi i calcoli effettuati tramite le istruzioni SQL utilizzate per le query? Nel corso di questa trattazione verranno analizzati gli strumenti e le caratteristiche che rendono MySQL un'applicazione affidabile per quanto riguarda i calcoli matematici.

Gli strumenti di MySQL per la precisione dei calcoli

Durante la realizzazione delle varie versioni di MySQL gli sviluppatori hanno sempre dedicato particolare attenzione agli strumenti dedicati alla precisione matematica dei calcoli, questa attenzione non è mancata anche nelle fasi di sviluppo della release numero 6, al momento in fase Alpha.

MySQL mette così a disposizione un valido supporto per la precisione dei calcoli, permettendo di ottenere risultati precisi e accurati e di effettuare un controllo efficace sui valori considerati non validi. In particolare, la precisione dei calcoli è il risultato di due strumenti:

  • gli SQL modes, a cui spetta il controllo sui dati accettati o rifiutati dal database
  • una libreria MySQL appositamente dedicata all'aritmetica frazionaria.

Queste funzionalità fornisco alcuni indubbi vantaggi durante le interrogazione mirate all'esecuzione di calcoli:

  • per i valori numerici esatti, le procedure di calcolo non prevedono la restituzione di errori dovuti ai valori in virgola mobile; per fare un esempio, un valore come 0,001 viene utilizzato come valore esatto e non come semplice approssimazione, per cui sommando questo valore 1.000 volte si otterrà un risultato esattamente pari a 1 e non un valore approssimativo arrotondato al primo intero.
  • Per quanto riguarda gli arrotondamenti, gli output generati tramite l'utilizzo della funzione ROUND() nelle interrogazioni non saranno determinati da fattori relativi all'ambiente in cui gira il database, ma dai parametri che verranno passati alla funzione.
  • Sarà possibile avvalersi della stessa precisione matematica indipendentemente dalla piattaforma di riferimento, l'accuratezza dei risultati sarà così garantita su sistemi operativi Windows così come Unix o Unix-Like come Linux.
  • Sarà possibile individuare, controllare e gestire le operazioni e i valori non considerati validi da MySQL, ad esempio, saranno rilevati i tentativi di divisione di valori per divisore pari 0 (division by zero) e gestiti come errori; una divisione per 0 potrà essere gestita come una comune operazione in grado di restituire il non valore NULL o come un errore sulla base dell'impostazione relativa alla variabile di sistema denominata sql_mode.

Guide Database

Guida Access

Iniziare a sviluppare database grazie alla potenza visuale offerta...

Guida SQL Server 2005

L'RDBMS di Microsoft è uno dei più utilizzati, soprattutto in ambito...

Guida Oracle

Scoprire ed approfondire un dei più importanti RDBMS sulla scena...

Altre guide

Newsletter

Ogni settimana, in due distinte newsletter: notizie a approfondimenti su MySQL, SQLserver e Oracle.

Iscriviti alla newsletter

Altre newsletter

Corsi in aula

Nessun corso previsto

Nessun corso previsto