Differenza tra numerici decimali in SQL

October 6

Differenza tra numerici decimali in SQL


I dati memorizzati nei database Oracle possono sembrare molto simili, ma essere molto dissimili, in base al tipo definito dell'oggetto. Un tipo viene assegnato a ogni costante, variabile e parametro nel database. Un numero può essere memorizzato come una varietà di tipi di numero scalari a seconda del design e destinazione d'uso del database.

sottotipi numero

In SQL, un numero è un tipo di dati che può essere assegnato ai dati, ed è definito da un valore esatto o approssimativo. I vari sottotipi numero di dati sono comparabili tra di loro. Il sottotipo dati numero assegnato determina la precisione dei dati.

Decimali NUMERICO vs.

Secondo il SQL-92 standard, decimale deve essere esattamente preciso quanto dichiarato, mentre numerica deve essere almeno altrettanto preciso quanto dichiarato. In pratica, alcuna differenza sostanziale esiste in genere tra i NUMERIC e DECIMAL sottotipi. Tutti i principali pacchetti di database commerciali - tra cui MySQL, Transact-SQL e Oracle - trattano NUMERICO e DECIMALE come sinonimi.

Scala e precisione

Entrambi i sottotipi NUMERIC e DECIMAL sono controllati dalla precisione variabili e la scala. Il formato corretto per entrambi i tipi di dati è numerico (precisione, scala) o decimale (precisione, scala). Precisione si riferisce al numero consentito di cifre significative nei dati, e può raggiungere un massimo di 38 cifre. Questa è l'impostazione predefinita se la precisione non è specificato. Bilancia determina il punto di arrotondamento. Scale può variare da -84 a 127. I numeri positivi influenzano arrotondamento alla destra del punto decimale, mentre i numeri negativi influenzano arrotondamento alla sinistra del punto decimale. Ad esempio, una scala di 3 sarebbe arrotondare al millesimo (9,8765 diventa 9,877). Zero arrotonda al numero intero più vicino, ed è il default se bilancia non è specificato.

Altri sottotipi Numero

Il numero di sottotipi DOPPIA precisione e FLOAT può essere utilizzato per dichiarare numeri in virgola mobile con una precisione massima di 38 cifre decimali. La REALE sottotipo può essere utilizzato per dichiarare numeri in virgola mobile con una precisione massima di 18 cifre decimali. Il numero intero sottotipo può essere utilizzato per dichiarare interi con una precisione massima di 38 cifre decimali.