📜  SQL 日期格式 - SQL (1)

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

SQL 日期格式

SQL 日期格式是在数据库中处理日期和时间的方法。在SQL中,有许多不同的日期和时间数据类型,可以根据需要选择使用。

日期数据类型

SQL中的日期数据类型包括以下内容:

  • DATE:用于存储日期值(年月日),格式为YYYY-MM-DD。
  • TIME:用于存储时间值(时分秒),格式为HH:MM:SS。
  • TIMESTAMP:用于存储日期和时间值,格式为YYYY-MM-DD HH:MM:SS。

下面是一些示例:

-- 用于创建一个包含日期和时间数据类型的表
CREATE TABLE example (
    date_column DATE,
    time_column TIME,
    timestamp_column TIMESTAMP
);

-- 用于插入数据
INSERT INTO example (date_column, time_column, timestamp_column)
VALUES ('2020-01-01', '12:34:56', '2020-01-01 12:34:56');
日期函数

SQL中有许多日期函数,可以用于处理日期和时间。以下是一些最常用的日期函数:

  • NOW():返回当前日期和时间。
  • DATE():从日期/时间表达式中提取日期部分。
  • TIME():从日期/时间表达式中提取时间部分。
  • YEAR():从日期/时间表达式中提取年份。
  • MONTH():从日期/时间表达式中提取月份。
  • DAY():从日期/时间表达式中提取天数。
  • HOUR():从日期/时间表达式中提取小时数。
  • MINUTE():从日期/时间表达式中提取分钟数。
  • SECOND():从日期/时间表达式中提取秒数。

以下是一些使用日期函数的示例:

-- 返回当前日期和时间
SELECT NOW();

-- 从时间戳中提取日期部分
SELECT DATE('2020-01-01 12:34:56');

-- 从时间戳中提取时间部分
SELECT TIME('2020-01-01 12:34:56');

-- 从时间戳中提取年份
SELECT YEAR('2020-01-01 12:34:56');

-- 从时间戳中提取月份
SELECT MONTH('2020-01-01 12:34:56');

-- 从时间戳中提取天数
SELECT DAY('2020-01-01 12:34:56');

-- 从时间戳中提取小时数
SELECT HOUR('2020-01-01 12:34:56');

-- 从时间戳中提取分钟数
SELECT MINUTE('2020-01-01 12:34:56');

-- 从时间戳中提取秒数
SELECT SECOND('2020-01-01 12:34:56');
日期格式化

日期格式化是将日期和时间值转换为特定格式的过程。在SQL中,可以使用DATE_FORMAT()函数将日期格式化为想要的格式。

以下是一些最常用的日期格式控制符:

  • %Y:年份(YYYY格式)
  • %y:年份(YY格式)
  • %m:月份(MM格式)
  • %d:日(DD格式)
  • %H:小时(24小时格式)
  • %h:小时(12小时格式)
  • %i:分钟
  • %s:秒钟
  • %p:AM或PM

以下是一些使用DATE_FORMAT()函数进行日期格式化的示例:

-- 将日期格式化为YYYY-MM-DD格式
SELECT DATE_FORMAT('2020-01-01', '%Y-%m-%d');

-- 将日期格式化为MM/DD/YY格式
SELECT DATE_FORMAT('2020-01-01', '%m/%d/%y');

-- 将日期格式化为DD-MM-YYYY HH:MM:SS格式
SELECT DATE_FORMAT('2020-01-01 12:34:56', '%d-%m-%Y %H:%i:%s');
总结

SQL中有许多不同的日期和时间数据类型和函数,可根据需要轻松操纵和处理日期和时间值。通过使用日期格式控制符和DATE_FORMAT()函数,可以将日期和时间值格式化为特定的格式。学会使用这些技能将帮助您更轻松地管理数据库中的日期和时间数据。