Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Come posso convertire da un tipo di dati di denaro nel server SQL?

Le normali conversioni di denaro conserveranno i singoli penny:

SELECT convert(varchar(30), moneyfield, 1)

L'ultimo parametro determina l'aspetto del formato di output:

0 (predefinito) Nessuna virgola ogni tre cifre a sinistra della virgola decimale e due cifre a destra della virgola decimale; per esempio, 4235,98.

1 virgola ogni tre cifre a sinistra della virgola decimale e due cifre a destra della virgola; ad esempio, 3.510,92.

2 Nessuna virgola ogni tre cifre a sinistra del punto decimale e quattro cifre a destra del punto decimale; ad esempio, 4235.9819.

Se vuoi troncare i penny e contare in sterline, puoi usare l'arrotondamento alla sterlina più vicina, floor alla sterlina intera più bassa o il massimale per arrotondare per eccesso le sterline:

SELECT convert(int, round(moneyfield, 0))
SELECT convert(int, floor(moneyfield))
SELECT convert(int, ceiling(moneyfield))