Panduan Lengkap Mengenai DECIMAL MySQL untuk Pemula

Hai teman-teman, para ahli basis data masa depan! Hari ini, kita akan meluncur ke dalam dunia yang menakjubkan tipe data DECIMAL di MySQL. Jangan khawatir jika Anda belum pernah menulis baris kode sebelumnya – saya akan menjadi panduan ramah Anda dalam perjalanan ini, menjelaskan segala sesuatu secara langkah demi langkah. Jadi, ambillah secangkir kopi (atau teh, jika itu hal Anda), dan mari kita mulai!

MySQL - DECIMAL

Tipe Data DECIMAL MySQL

Apa Itu DECIMAL?

DECIMAL adalah tipe data di MySQL yang memungkinkan kita menyimpan nilai numerik yang tepat. Anda mungkin berpikir, "Tapi bisakah kita hanya menggunakan angka biasa?" Ya, tetapi DECIMAL khusus. Itu sangat berguna ketika kita butuh perhitungan yang presisi, seperti berurusan dengan uang atau pengukuran ilmiah.

Bayangkan Anda sedang membuat aplikasi perbankan. Anda tentu tidak ingin menggunakan tipe data yang mungkin membulatkan sen, kan? Itu di mana DECIMAL berguna!

Sintaks dan Penggunaan

Sintaks dasar untuk mendeklarasikan kolom DECIMAL adalah:

DECIMAL(M,D)

Di sini, 'M' adalah jumlah maksimum digit (ketelitian), dan 'D' adalah jumlah digit di sebelah kanan titik desimal (skala). Mari kitauraikan ini dengan contoh:

CREATE TABLE product_prices (
id INT AUTO_INCREMENT PRIMARY KEY,
product_name VARCHAR(100),
price DECIMAL(10,2)
);

Dalam contoh ini, kita sedang membuat tabel untuk menyimpan harga produk. Kolom 'price' didefinisikan sebagai DECIMAL(10,2), yang berarti:

  • Itu dapat menyimpan hingga 10 digit secara keseluruhan
  • 2 digit dari itu akan berada di belakang titik desimal

Jadi, kita dapat menyimpan harga seperti 1234567.89 atau 9.99, tetapi tidak 1234567890.99 (terlalu banyak digit) atau 9.999 (terlalu banyak tempat desimal).

Penyimpanan DECIMAL MySQL

Sekarang, mari bicarakan tentang bagaimana MySQL menyimpan nilai DECIMAL. Ini mungkin terdengar teknis, tapi saya berjanji itu menarik!

MySQL menyimpan nilai DECIMAL dalam format biner. Setiap digit desimal memakan 4 bit, dan untuk angka negatif, MySQL menggunakan bit tanda byte pertama.

Ini adalah fakta menarik: MySQL memasukkan digit ke dalam byte, artinya itu dapat menyimpan dua digit desimal per byte. Cerdik, kan?

Mari kita lihat beberapa contoh untuk memahami persyaratan penyimpanan:

Definisi DECIMAL Persyaratan Penyimpanan
DECIMAL(5,2) 3 byte
DECIMAL(5,0) 3 byte
DECIMAL(10,5) 5 byte
DECIMAL(65,30) 33 byte

Seperti yang Anda lihat, persyaratan penyimpanan meningkat seiring meningkatnya ketelitian (M) DECIMAL kita.

Tipe Data Decimal Menggunakan Program Klien

Sekarang kita mengerti apa DECIMAL dan bagaimana itu disimpan, mari kita lihat itu dalam tindakan! Kita akan menggunakan program klien MySQL untuk membuat tabel, memasukkan data, dan mengquerynya.

Membuat Tabel dengan DECIMAL

Pertama, mari kita buat tabel untuk menyimpan informasi tentang produk:

CREATE TABLE products (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(100),
price DECIMAL(10,2),
weight DECIMAL(5,3)
);

Di sini, kita menggunakan DECIMAL untuk harga (memungkinkan hingga 8 digit sebelum desimal dan 2 setelah) dan berat (memungkinkan hingga 2 digit sebelum desimal dan 3 setelah).

Memasukkan Data

Sekarang, mari kita tambahkan beberapa produk ke tabel kita:

INSERT INTO products (name, price, weight)
VALUES
('Laptop', 999.99, 2.500),
('Smartphone', 599.99, 0.180),
('Headphones', 149.99, 0.220);

Querying Data

Mari kita mengambil data kita dan melakukan beberapa perhitungan:

SELECT name, price, weight, price * weight AS price_per_kg
FROM products;

Query ini akan memberikan kita hasil seperti ini:

+------------+---------+--------+--------------+
| name       | price   | weight | price_per_kg |
+------------+---------+--------+--------------+
| Laptop     | 999.99  | 2.500  | 2499.975000  |
| Smartphone | 599.99  | 0.180  | 107.998200   |
| Headphones | 149.99  | 0.220  | 32.997800    |
+------------+---------+--------+--------------+

Perhatikan bagaimana MySQL menjaga presisi dalam perhitungan yang melibatkan nilai DECIMAL.

Catatan Peringatan

Meskipun DECIMAL sangat baik untuk presisi, penting untuk menggunakannya dengan bijak. Jika Anda tidak memerlukan presisi yang tepat (seperti saat berurusan dengan angka besar di mana perbedaan kecil tak signifikan), pertimbangkan untuk menggunakan FLOAT atau DOUBLE untuk performa yang lebih baik.

Kesimpulan

Dan di sana Anda punya nya, teman-teman! Kita telah berpergian melalui negeri tipe data DECIMAL MySQL. Kita telah belajar apa itu, bagaimana itu disimpan, dan bagaimana menggunakannya dalam konteks dunia nyata.

Ingat, di dunia basis data, presisi bisa menjadi teman terbaik Anda atau musuh terburuk. Pilih tipe data Anda bijak, dan maya perhitungan Anda selalu akurat!

Saat kita mengakhiri, ini adalah sedikit humor basis data untuk Anda: Mengapa programmer lebih suka mode gelap? Karena cahaya menarik nyamuk!

Teruslatih, tetap bersemangat, dan selamat coding!

Credits: Image by storyset