Vsebina
Jezik SQL samodejno zaokroži številke, če stolpec tabele, v katerega shranite, dovoljuje le določeno natančnost decimalnih mest. Delate lahko z natančnimi težavami z uporabo "okrogle" funkcije SQL. Ta funkcija vam omogoča nadzor nad tem, kako SQL shranjuje številske vrednosti v tabelah zbirke podatkov.
Več o kroženju števil v SQL (Hemera Technologies / AbleStock.com / Getty Images)
Težava
Pri pregledovanju podatkov v tabelah boste opazili problem zaokroževanja SQL. Prikazana številčna vrednost ni enaka številki, ki ste jo shranili z ukazom "insert". Podatkovni tipi stolpcev SQL vam omogočajo, da nastavite natančnost decimalne vejice. Če želite imeti samo dve decimalni mesti in poskusite shraniti številko s tremi, bo SQL zaokrožil vrednost.
Struktura tabele
Vrsto podatkov stolpca lahko spremenite z urejevalnikom tabel SQL. Tabele lahko urejate v programu Microsoft SQL Server Management Studio, ki je priložen strežniku SQL Server. Z desno miškino tipko kliknite na tabelo in izberite "Spremeni". V seznamu podatkovnih vrstic stolpca izberite natančnost, da povečate število decimalnih mest in popravite problem zaokroževanja.
Funkcija kroga
Če ne želite spreminjati podatkovnega tipa tabele, uporabite funkcijo zaokroževanja, da spremenite obnašanje številskega pomnilnika. Zaokrožite navzgor, navzdol ali pustite, da funkcija izvede standardno zaokroževanje decimalnih vrednosti. Naslednja koda se na primer zaokroži:
krog (stolpec 2, -1)
Ta funkcija se zaokroži na dve decimalni mesti, vedno navzgor. Če odstranite parameter "-1", SQL izvede standardno zaokroževanje, tj. Če je vrednost večja ali enaka "5" in navzdol, če je vrednost nižja.
Premisleki
Ko spremenite vedenje zaokroževanja v SQL, morate preveriti tudi vsak stolpec, ki ima vsoto zaokroženih števil. Ta stolpec bo imel napačno vrednost, zato boste morali znova izračunati vsoto, da popravite napake.