Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

Apa perbedaan antara Float dan Numerik/Desimal di SQL Server - Tutorial SQL Server / T-SQL Bagian 33

Mengambang dan Nyata adalah tipe data perkiraan. Tipe data Float dan Real tidak menyimpan nilai eksak untuk banyak angka. Nilai bisa sangat tertutup.

Numerik/Desimal adalah tipe data presisi tetap. Ini akan menyimpan nilai-nilai dengan presisi yang tepat dan skala apa yang telah Anda tetapkan.

Jika Anda perlu menyimpan data di mana perbedaan kecil tidak masalah, Anda dapat menggunakan Float atau Real. Tetapi jika Anda perlu memiliki data yang tepat seperti untuk aplikasi keuangan. Anda harus menggunakan tipe data Numerik/Desimal atau Uang untuk menyimpan data yang tepat, karena perbedaan kecil dapat memengaruhi penghitungan.

Contoh:


Mari kita deklarasikan dua variabel dan simpan data yang sama dan lihat apa yang terjadi pada output karena tipe datanya.
DECLARE @DecimalVariable DECIMAL(8, 2)

SET @DecimalVariable = 213429.95

DECLARE @FloatVariable FLOAT(24)

SET @FloatVariable = 213429.95

SELECT @DecimalVariable AS DecimalVariable
    ,@FloatVariable AS FloatVariable
 
 
 
 Perbedaan Float dan Desimal/Numerik di SQL Server - Tutorial T SQL 
 Seperti yang bisa kita lihat di snapshot di atas, Desimal menyimpan dan menunjukkan nilai yang tepat dan di mana kita menyimpan nilai dalam float, itu membulatkan nilainya. 

Karena tipe data float/ real adalah tipe data perkiraan, Hindari menggunakannya menggunakan klausa Where khusus dengan operator =atau <>.

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana mengatasi tidak dapat mengganti kesalahan penyandian saat memasukkan XML ke SQL Server

  2. Cara Drop Database dengan menggunakan TSQL dan GUI - Tutorial SQL Server / TSQL Bagian 25

  3. Cara Menyertakan Hasil yang Mengikat untuk Tempat Terakhir saat Menggunakan Klausa TOP di SQL Server

  4. Memindahkan Tabel SQL Server ke Filegroup Berbeda

  5. Hapus nomor dari string sql server