MySQL中的数值类型

MySQL中的数值类型

MySQL中的数值类型

MySQL是一种广泛使用的关系型数据库管理系统。在MySQL中,数值类型是其中一种重要的数据类型。本文将详细讨论MySQL中的数值类型,并提供一些代码示例和运行结果。

1. 整数类型

MySQL提供了多种整数类型,每种类型都有不同的取值范围和存储空间。下面是MySQL中一些常见的整数类型:

  • TINYINT:1字节,范围为-128至127或0至255。
  • SMALLINT:2字节,范围为-32768至32767或0至65535。
  • MEDIUMINT:3字节,范围为-8388608至8388607或0至16777215。
  • INT:4字节,范围为-2147483648至2147483647或0至4294967295。
  • BIGINT:8字节,范围为-9223372036854775808至9223372036854775807或0至18446744073709551615。

以下是一个创建并插入数据到整数类型列的示例:

CREATE TABLE numbers (
  id INT,
  tinyint_col TINYINT,
  smallint_col SMALLINT,
  mediumint_col MEDIUMINT,
  int_col INT,
  bigint_col BIGINT
);

INSERT INTO numbers (id, tinyint_col, smallint_col, mediumint_col, int_col, bigint_col)
VALUES (1, 10, 100, 1000, 10000, 100000);

展示表中的数据:

SELECT * FROM numbers;

运行结果:

+------+------+------+------+--------+-----------+
| id   | tinyint_col | smallint_col | mediumint_col | int_col | bigint_col |
+------+------+------+------+--------+-----------+
|    1 |         10 |          100 |           1000 |   10000 |     100000 |
+------+------+------+------+--------+-----------+

2. 浮点数类型

除了整数类型,MySQL还有许多浮点数类型可供选择。浮点数类型有不同的精度和存储大小。

  • FLOAT:单精度浮点数,4字节,适合存储相对较小的浮点数。
  • DOUBLE:双精度浮点数,8字节,用于存储更大范围和更高精度的浮点数。

以下是一个创建并插入数据到浮点数类型列的示例:

CREATE TABLE float_numbers (
  id INT,
  float_col FLOAT,
  double_col DOUBLE
);

INSERT INTO float_numbers (id, float_col, double_col)
VALUES (1, 3.14, 3.141592653589793);

展示表中的数据:

SELECT * FROM float_numbers;

运行结果:

+------+------+------------+
| id   | float_col | double_col |
+------+------+------------+
|    1 |     3.14 |   3.141593 |
+------+------+------------+

3. 定点数类型

除了浮点数类型,MySQL还提供了定点数类型,用于精确存储小数。定点数类型有不同的精度和范围。

  • DECIMAL(M, D):指定总位数和小数位数的定点数。M是总位数,D是小数位数。

以下是一个创建并插入数据到定点数类型列的示例:

CREATE TABLE decimal_numbers (
  id INT,
  decimal_col DECIMAL(5, 2)
);

INSERT INTO decimal_numbers (id, decimal_col)
VALUES (1, 123.45);

展示表中的数据:

SELECT * FROM decimal_numbers;

运行结果:

+------+------+-------------+
| id   | decimal_col |
+------+------+-------------+
|    1 |       123.45 |
+------+------+-------------+

4. 其他数值类型

除了上述提到的数值类型,MySQL还提供了其他一些特殊的数值类型,如以下几种:

  • BIT:存储位值的类型,取值范围为0和1。
  • BOOLEAN:存储逻辑值(TRUE或FALSE)的类型。

以下是一个创建并插入数据到BIT和BOOLEAN类型列的示例:

CREATE TABLE other_numbers (
  id INT,
  bit_col BIT(4),
  boolean_col BOOLEAN
);

INSERT INTO other_numbers (id, bit_col, boolean_col)
VALUES (1, b'1010', TRUE);

展示表中的数据:

SELECT * FROM other_numbers;

运行结果:

+------+------+--------------+
| id   | bit_col | boolean_col |
+------+------+--------------+
|    1 | 1010   |           1 |
+------+------+--------------+

5. 总结

MySQL提供了多种数值类型,用于存储不同范围和精度的数值数据。通过选择适当的数值类型,可以在数据库中高效地存储和处理数值数据。在设计数据库表时,应根据具体的需求选择合适的数值类型,并注意控制存储空间和保持数据的准确性。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程