uang dan smallmoney (Transact-SQL)
Berlaku untuk: SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics Analytics
Platform System (PDW)
Jenis data yang mewakili nilai moneter atau mata uang.
Keterangan
Jenis Data | Rentang | Penyimpanan |
---|---|---|
uang | -922.337.203.685.477.5808 menjadi 922.337.203.685.477.5807 (-922.337.203.685.477,58 menjadi 922.337.203.685.477,58 untuk Informatica. Informatica hanya mendukung dua desimal, bukan empat.) |
8 byte |
smallmoney | -214.748,3648 ke 214.748.3647 | 4 byte |
Jenis data uang dan smallmoney akurat hingga sepuluh ribu unit moneter yang mereka wakili. Untuk Informatica, jenis data uang dan smallmoney akurat hingga seratus unit moneter yang mereka wakili.
Gunakan periode untuk memisahkan unit moneter parsial, seperti sen, dari seluruh unit moneter. Misalnya, 2.15
menentukan 2 dolar dan 15 sen.
Jenis data ini dapat menggunakan salah satu simbol mata uang berikut.
Simbol | Mata Uang | Nilai heksadesimal |
---|---|---|
$ | Tanda dolar | 0024 |
¢ | Tanda sen | 00A2 |
£ | Tanda pas | 00A3 |
¤ | Tanda mata uang | 00A4 |
¥ | Tanda Yen | 00A5 |
৲ | Tanda Rupee Bengali | 09F2 |
৳ | Tanda Rupee Bengali | 09F3 |
฿ | Simbol mata uang Baht Thailand | 0E3F |
៛ | Simbol mata uang Khmer Riel | 17DB |
₠ | Tanda mata uang Euro | 20A0 |
₡ | Tanda titik dua | 20A1 |
₢ | Tanda Cruzeiro | 20A2 |
₣ | Tanda Franc Prancis | 20A3 |
₤ | Tanda Lira | 20A4 |
₥ | Tanda mill | 20A5 |
₦ | Tanda Naira | 20A6 |
₧ | Tanda Peseta | 20A7 |
Rs | Tanda Rupee | 20A8 |
₩ | Tanda menang | 20A9 |
₪ | Tanda Sheqel baru | 20AA |
₫ | Tanda dong | 20AB |
€ | Tanda euro | 20AC |
₭ | Tanda kip | 20AD |
₮ | Tanda Tugrik | 20AE |
₯ | Tanda drachma | 20AF |
₰ | Tanda Penny Jerman | 20B0 |
₱ | Tanda peso | 20B1 |
﷼ | Tanda rial | FDFC |
﹩ | Tanda Dolar Kecil | FE69 |
$ | Tanda Dolar lebar penuh | FF04 |
¢ | Tanda Cent lebar penuh | FFE0 |
£ | Tanda Pound lebar penuh | FFE1 |
¥ | Tanda Yen lebar penuh | FFE5 |
₩ | Tanda Won lebar penuh | FFE6 |
Anda tidak perlu memasukkan mata uang atau data moneter dalam tanda kutip tunggal ('
). Meskipun Anda dapat menentukan nilai moneter yang didahului oleh simbol mata uang, SQL Server tidak menyimpan informasi mata uang apa pun yang terkait dengan simbol, itu hanya menyimpan nilai numerik.
Peringatan
Anda dapat mengalami kesalahan pembulatan melalui pemotongan, saat menyimpan nilai moneter sebagai uang dan smallmoney. Hindari menggunakan jenis data ini jika nilai uang atau mata uang Anda digunakan dalam perhitungan. Sebagai gantinya , gunakan jenis data desimal dengan setidaknya empat tempat desimal.
Mengonversi data uang
Ketika Anda mengonversi ke uang dari jenis data bilangan bulat, unit diasumsikan berada di unit moneter. Misalnya, nilai bilangan 4
bulat dikonversi ke uang yang setara dengan 4 unit moneter.
Contoh berikut mengonversi nilai smallmoney dan uang menjadi jenis data varchar dan desimal .
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';
Berikut adalah hasil yang ditetapkan. Karena jenis desimal dalam contoh tidak memiliki skala, nilainya dipotong.
SM_MONEY VARCHAR(20) MONEY DECIMAL
------------------------------ ----------------------
3148.29 3148