Probleme de rotunjire în cifre zecimale în SQL

Autor: Roger Morrison
Data Creației: 6 Septembrie 2021
Data Actualizării: 17 Aprilie 2024
Anonim
Probleme de rotunjire în cifre zecimale în SQL - Articole
Probleme de rotunjire în cifre zecimale în SQL - Articole

Conţinut

Limba SQL rotește automat numerele dacă coloana de tabelă în care veți economisi permite doar o anumită precizie a zecimalelor. Puteți lucra cu probleme de precizie utilizând funcția "rotundă" SQL. Această funcție vă permite să controlați modul în care SQL stochează valorile numerice în tabelele bazei de date.


Aflați cum să rotunji numere în SQL (Hemera Technologies / AbleStock.com / Getty Images)

problemă

Veți observa problema de rotunjire SQL când vedeți datele din tabele. Valoarea numerică afișată nu este aceeași cu cea pe care ați salvat-o prin comanda "inserați". Tipurile de date ale coloanelor SQL vă permit să setați precizia punctului zecimal. Dacă doriți să aveți doar două zecimale și încercați să salvați un număr cu trei, SQL va rotunji valoarea.

Structura tabelului

Puteți modifica tipul de date al unei coloane utilizând un editor de tabele SQL. Puteți edita tabelele în Microsoft SQL Server Management Studio, care vine cu SQL Server. Faceți clic dreapta pe masă și alegeți "Modificați". Selectați precizia din lista tipurilor de date din coloană pentru a mări numărul de zecimale și a corecta problema de rotunjire.


Funcția rotundă

Dacă nu doriți să modificați tipul de date al tabelului, utilizați funcția de rotunjire pentru a schimba comportamentul de stocare numerică. Se rotunjește în jos sau se lasă funcția să efectueze rotunjirea standard a valorilor zecimale. De exemplu, următorul cod se încheie:

rotundă (coloană, 2, -1)

Această funcție se rotunjește cu două zecimale, mereu în sus. Eliminarea parametrului "-1" determină SQL să efectueze rotunjirea standard, adică dacă valoarea este mai mare sau egală cu "5" și în jos dacă valoarea este mai mică.

consideraţii

Când modificați comportamentul de rotunjire în SQL, trebuie să verificați și orice coloană care are o sumă de numere rotunjite. Această coloană va avea o valoare incorectă, deci va trebui să recalculați suma pentru a corecta eventualele erori.