MySQL 数据类型与类型转换


发布日期 : 2019-12-22 06:30:17 UTC

访问量: 10 次浏览

mysql dataformat

1. 介绍

MySQL 是一种广泛使用的开源关系型数据库管理系统。在 MySQL 中,数据存储的方式是通过表的形式,每个表中包含了多个字段(列),而每个字段具有特定的数据类型和数据格式。在本篇文章中,我们将详细介绍 MySQL 的数据类型和数据格式,包括字符类型、数字类型、日期时间类型等。

2. 字符类型

MySQL 中常见的字符类型有 CHARVARCHARTEXT

  • CHAR:固定长度的字符类型,最长可存储 255 个字符。
  • VARCHAR:可变长度的字符类型,最长可存储 65535 个字符。
  • TEXT:用于存储较长文本的字符类型,最长可存储 65535 个字符。

下面是创建一个包含字符类型字段的表的示例:

CREATE TABLE students (
    id INT AUTO_INCREMENT,
    name VARCHAR(50),
    address TEXT,
    PRIMARY KEY (id)
);

3. 数字类型

MySQL 中常见的数字类型有整型和浮点型。

  • 整型:包括 TINYINTSMALLINTMEDIUMINTINTBIGINT 等。
  • 浮点型:包括 FLOATDOUBLE 等。

以下是一个包含数字类型字段的示例表:

CREATE TABLE orders (
    id INT AUTO_INCREMENT,
    total_amount FLOAT,
    quantity INT,
    PRIMARY KEY (id)
);

4. 日期时间类型

MySQL 中常见的日期时间类型有 DATETIMEDATETIMETIMESTAMP

  • DATE:存储日期,格式为 'YYYY-MM-DD'
  • TIME:存储时间,格式为 'HH:MM:SS'
  • DATETIME:存储日期和时间,格式为 'YYYY-MM-DD HH:MM:SS'
  • TIMESTAMP:存储时间戳,格式为 'YYYY-MM-DD HH:MM:SS'

下面是一个包含日期时间类型字段的示例表:

CREATE TABLE logs (
    id INT AUTO_INCREMENT,
    log_message TEXT,
    log_date DATETIME,
    PRIMARY KEY (id)
);

5. 其他常用数据类型和格式

除了上述提到的常见数据类型外,MySQL 还有其他一些常用的数据类型和格式。

  • ENUM:枚举类型,用于存储选择项中的一个值。
  • SET:集合类型,用于存储选择项中的多个值。
  • BLOB:用于存储二进制大对象的类型。
  • JSON:用于存储 JSON 格式的数据。

以下是一个包含其他数据类型字段的示例表:

CREATE TABLE products (
    id INT AUTO_INCREMENT,
    name VARCHAR(50),
    category ENUM('Electronics', 'Clothing', 'Books'),
    images BLOB,
    metadata JSON,
    PRIMARY KEY (id)
);

6. 数据格式转换

在实际应用中,有时需要对 MySQL 中的数据进行格式转换,以满足特定的需求。

6.1 字符串转日期

可以使用 STR_TO_DATE() 函数将字符串转换为日期类型。

SELECT STR_TO_DATE('2022-01-01', '%Y-%m-%d');

输出为:2022-01-01

6.2 日期转字符串

可以使用 DATE_FORMAT() 函数将日期类型转换为字符串格式。

SELECT DATE_FORMAT('2021-12-31', '%Y/%m/%d');

输出为:2021/12/31

6.3 数字类型转字符串

可以使用 CAST()CONVERT() 函数将数字类型转换为字符串格式。

SELECT CAST(123 AS CHAR);
SELECT CONVERT(123, CHAR);

输出都为:'123'

6.4 字符串类型转数字

可以使用 CAST()CONVERT() 函数将字符串类型转换为数字格式。

SELECT CAST('456' AS INT);
SELECT CONVERT('456', INT);

输出都为:456

7. 总结

本文对 MySQL 的数据类型和数据格式进行了详细介绍,包括字符类型、数字类型、日期时间类型等。此外,还介绍了常见的数据格式转换方法,如字符串转日期、日期转字符串、数字类型转字符串等。通过灵活运用这些数据类型和格式转换方法,可以更好地满足数据库应用的需求。