Mai mult
SQL - Rotunjire la 2 zecimale
Am nevoie pentru a converti de la minute la ore, rotunjit la 2 zecimale.De asemenea, am nevoie pentru a afișa numai până la 2 cifre după punctul zecimal. Deci, dacă am de minute ca 650.Apoi ore ar trebui să fie 10.83
Aici's ceea ce am pana acum:
Select round(Minutes/60.0,2) from ....
Dar, în acest caz, în cazul meu de minute este, să zicem,630 de ore este 10.5000000. Dar vreau ca 10.50 numai(după rotunjire). Cum pot realiza acest lucru?
210
14
Nu ai putea arunca rezultat ca
numeric(x,2)
? Undex <= 38
Se întoarce
Ca cu SQL Server 2012, puteți utiliza built-in format funcția:
(doar pentru lecturi suplimentare...)
puteți utiliza
Funcționează atât cu postgresql și Oracle
Tot ceea ce ai de utilizare în denumire trebuie să fie în zecimal, de exemplu
1548/100
da15.00
Dacă vom înlocui
100
cu100.0
în exemplul nostru vom obține 15.48`Următoarea interogare este util și simplu-
Oferă ieșire de 0,25.
Converti numărul tău de a o
Numeric " sau " Zecimal
.Înlocuiți interogare cu următoarele.
Sql server
MySql:
A
Aruncat
funcția este un înveliș pentru a "Converti" funcția. Cuplu care cu SQL fiind un limbaj interpretat, iar rezultatul este că, deși cele două funcții produce aceleași rezultate, nu este ușor mai întâmplă în spatele scenei înAruncat
funcție. Folosind "Converti" funcția este un mic economisire, dar mici economii multiplica.Ca un add-on pentru răspunsurile de mai jos, atunci când se utilizează INT sau non-zecimal tipuri de date în formule, amintiți-vă pentru a multiplica valoarea de 1 și de numărul de zecimale preferați.
adică -
TotalPackages
este unINT
și așa numitorTotalContainers
, dar vreau ca rezultatul să aibă până la 6 zecimale.astfel:
încercați acest lucru :
SELECT EXPRIMATE(ROUND([Cantitate 1]/60,2) CA ZECIMAL(10,2)) ca TOTAL
Următorul fragment ar putea ajuta:
Am găsi STR funcția cea mai curată înseamnă a realiza acest lucru.