geld en smallmoney (Transact-SQL)
van toepassing op:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analytics Platform System (PDW)
SQL-database in Microsoft Fabric
Gegevenstypen die monetaire of valutawaarden vertegenwoordigen.
Opmerkingen
Gegevenstype | Bereik | Opslag |
---|---|---|
geld | -922.337.203.685.477.5808 tot 922.337.203.685.477.5807 (-922.337.203.685.477.58 tot 922.337.203.685.477.58 voor Informatica. Informatica ondersteunt slechts twee decimalen, niet vier.) |
8 bytes |
smallmoney | -214.748.3648 tot 214.748.3647 | 4 bytes |
Het geld en smallmoney gegevenstypen zijn nauwkeurig tot een tienduizendste van de monetaire eenheden die ze vertegenwoordigen. Voor Informatica zijn het geld en smallmoney gegevenstypen nauwkeurig voor een honderdste van de monetaire eenheden die ze vertegenwoordigen.
Gebruik een periode om gedeeltelijke monetaire eenheden, zoals centen, te scheiden van hele monetaire eenheden.
2.15
geeft bijvoorbeeld 2 dollar en 15 cent aan.
Deze gegevenstypen kunnen gebruikmaken van een van de volgende valutasymbolen.
Symbool | Valuta | Hexadecimale waarde |
---|---|---|
$ | Dollarteken | 0024 |
¢ | Centteken | 00A2 |
£ | Hekje | 00A3 |
¤ | Valutateken | 00A4 |
¥ | Yenteken | 00A5 |
৲ | Bengaals roepieteken | 09F2 |
৳ | Bengaals roepieteken | 09F3 |
฿ | Thai Baht valutasymbool | 0E3F |
៛ | Khmer Riel valutasymbool | 17DB |
₠ | Eurovalutateken | 20A0 |
₡ | Dubbele punt | 20A1 |
₢ | Cruzeiro-teken | 20A2 |
₣ | Franse frankteken | 20A3 |
₤ | Lira-teken | 20A4 |
₥ | Molenteken | 20A5 |
₦ | Naira-teken | 20A6 |
₧ | Pesetateken | 20A7 |
Rs | Roepieteken | 20A8 |
₩ | Won-teken | 20A9 |
₪ | Nieuw Sheqel-teken | 20AA |
₫ | Dong-teken | 20AB |
€ | Euroteken | 20AC |
₭ | Kipteken | 20AD |
₮ | Tugrik-teken | 20AE |
₯ | Drachmateken | 20AF |
₰ | Duits Pennyteken | 20B0 |
₱ | Pesoteken | 20B1 |
﷼ | Rial-teken | FDFC |
﹩ | Kleine dollarteken | FE69 |
$ | Dollarteken met volledige breedte | FF04 |
¢ | Centteken met volledige breedte | FFE0 |
£ | Hekje met volledige breedte | FFE1 |
¥ | Yenteken met volledige breedte | FFE5 |
₩ | Won-teken met volledige breedte | FFE6 |
U hoeft valuta- of monetaire gegevens niet tussen enkele aanhalingstekens ('
) te plaatsen. Hoewel u monetaire waarden kunt opgeven die voorafgaan door een valutasymbool, worden in SQL Server geen valutagegevens opgeslagen die aan het symbool zijn gekoppeld, maar alleen de numerieke waarde.
Waarschuwing
U kunt fouten afronden door afkappen, bij het opslaan van monetaire waarden als geld en smallmoney. Vermijd het gebruik van dit gegevenstype als uw geld- of valutawaarden worden gebruikt in berekeningen. Gebruik in plaats daarvan het decimaal gegevenstype met ten minste vier decimalen.
Geldgegevens converteren
Wanneer u converteert naar geld van gegevenstypen voor gehele getallen, wordt ervan uitgegaan dat eenheden in monetaire eenheden staan. De gehele waarde van 4
wordt bijvoorbeeld geconverteerd naar het geld equivalent van 4 monetaire eenheden.
In het volgende voorbeeld worden smallmoney- en waarden geld geconverteerd naar respectievelijk varchar- en decimaal gegevenstypen.
DECLARE @mymoney_sm SMALLMONEY = 3148.29,
@mymoney MONEY = 3148.29;
SELECT CAST(@mymoney_sm AS VARCHAR(20)) AS 'SM_MONEY VARCHAR(20)',
CAST(@mymoney AS DECIMAL) AS 'MONEY DECIMAL';
Dit is de resultatenset. Omdat het decimaal type in het voorbeeld geen schaalheeft, wordt de waarde afgekapt.
SM_MONEY VARCHAR(20) MONEY DECIMAL
------------------------------ ----------------------
3148.29 3148