Kerekítési problémák a decimális számokban SQL-ben

Szerző: Robert Simon
A Teremtés Dátuma: 20 Június 2021
Frissítés Dátuma: 21 November 2024
Anonim
Kerekítési problémák a decimális számokban SQL-ben - Cikkek
Kerekítési problémák a decimális számokban SQL-ben - Cikkek

Tartalom

Az SQL nyelv automatikusan lekerekíti a számokat, ha a táblázatos oszlop, amelybe menteni, csak egy bizonyos pontosságot tesz lehetővé. Az SQL "kerek" funkció segítségével precíz problémákkal dolgozhat. Ez a funkció lehetővé teszi, hogy ellenőrizze, hogy az SQL hogyan tárolja a számértékeket az adatbázis táblákban.


Ismerje meg, hogyan kell kerekíteni a számokat SQL-ben (Hemera Technologies / AbleStock.com / Getty Images)

probléma

A táblázatok adatait tekintve észre fogod venni az SQL kerekítési problémát. A megjelenített numerikus érték nem ugyanaz, mint amit az "Insert" paranccsal mentett. Az SQL oszlopok adattípusai lehetővé teszik a tizedespont pontosságának beállítását. Ha csak két tizedesjegyet szeretne megtenni, és megpróbál három számot menteni, az SQL kerekíti az értéket.

Táblázat szerkezete

Az oszlop adattípusát SQL táblázatszerkesztő segítségével módosíthatja. A táblázatokat szerkesztheti a Microsoft SQL Server Management Studio programban, amelyhez az SQL Server tartozik. Kattintson jobb gombbal az asztalra, és válassza a "Módosítás" lehetőséget. Válassza ki az oszlopadat-típusok listájának pontosságát a tizedesjegyek számának növeléséhez és a kerekítési probléma javításához.


Kerek funkció

Ha nem akarja módosítani a táblázat adattípusát, használja a kerekítési funkciót a numerikus tárolási viselkedés megváltoztatásához. Kerekítse felfelé, lefelé, vagy hagyja, hogy a funkció a decimális értékek szabványos kerekítését végezze el. Például az alábbi kód kerekít:

kerek (oszlop, 2, -1)

Ez a funkció két tizedesjegyig kerek, mindig felfelé. Az "-1" paraméter eltávolítása az SQL-t a szabványos lekerekítés elvégzésére teszi szükségessé, azaz ha az érték kisebb vagy egyenlő, mint az "5", és ha az érték alacsonyabb.

megfontolások

Ha megváltoztatja az SQL lekerekítési viselkedését, akkor ellenőriznie kell minden olyan oszlopot, amely kerekített számokat tartalmaz. Ez az oszlop hibás értékkel rendelkezik, így újra kell számítania az összeget a hibák kijavításához.