📜  MySQL DECIMAL(1)

📅  最后修改于: 2023-12-03 15:17:45.734000             🧑  作者: Mango

MySQL DECIMAL

MySQL DECIMAL 数据类型用于存储定点数,即带有固定小数位数的数值。DECIMAL 数据类型通常用于存储货币金额等需要精确计算的数值。

语法

DECIMAL(M,D)

其中,M 表示最大位数(精度),D 表示小数点后的位数(范围从 0 到 M-D)。

示例

使用 DECIMAL 数据类型来存储 10 个商品的单价,并计算订单总价。

CREATE TABLE products (
  id INT NOT NULL PRIMARY KEY,
  name VARCHAR(50) NOT NULL,
  price DECIMAL(10,2) NOT NULL
);

INSERT INTO products (id, name, price) VALUES
(1, 'Product A', 9.99),
(2, 'Product B', 19.99),
(3, 'Product C', 4.99),
(4, 'Product D', 29.99),
(5, 'Product E', 14.99),
(6, 'Product F', 49.99),
(7, 'Product G', 8.99),
(8, 'Product H', 11.99),
(9, 'Product I', 24.99),
(10, 'Product J', 7.99);

SELECT SUM(price) AS total_price FROM products;

在上面的示例中,我们创建了一个名为 products 的表,用 DECIMAL 数据类型存储商品单价。然后,我们向表中插入了 10 个样本数据,并使用 SUM() 函数计算了所有商品的总价。

注意事项
  • DECIMAL 数据类型使用定点数格式存储数值,可以精确计算小数位数。
  • DECIMAL 数据类型的存储大小与其精度有关,可能比 FLOAT 和 DOUBLE 数据类型更大。
  • DECIMAL 数据类型的计算效率可能比 FLOAT 和 DOUBLE 数据类型更低。
  • 在使用 DECIMAL 数据类型时,需要根据数据精度合理设置其 M 和 D 值。