SQL 日期函数2024年8月29日 | 阅读 10 分钟 在本教程中,我们将学习 SQL 中一些重要的内置日期函数。 SQL 中的日期函数
让我们通过示例详细地逐一了解每个日期函数。在编写查询的示例中,我们将使用 MySQL 数据库。 假设我们有一个包含以下数据的 student 表
我们将在一些示例中使用此表。 1. NOW()SQL 中的 NOW() 函数将返回当前系统的日期和时间。 语法 示例 编写查询以显示当前系统的日期和时间。 查询 在这里,我们编写了一个带有 NOW() 函数的 SELECT 查询来获取系统的当前日期和时间。Current_Date_Time 是存储日期和时间的别名。 执行上述查询后,我们得到以下输出
查询在系统中执行的日期和时间是 2021 年 10 月 24 日和 18:28:44。因此,它作为输出显示。 2. CURDATE()SQL 中的 CURDATE() 函数将返回当前系统的日期。 语法 示例 编写查询以显示当前系统的日期。 查询 在这里,我们编写了一个带有 CURDATE() 函数的 SELECT 查询来获取系统的当前日期。CurrentDate 是存储日期的别名。 执行上述查询后,我们得到以下输出
查询在系统中执行的日期是 2021 年 10 月 24 日。因此,它作为输出显示。 3. CURTIME()SQL 中的 CURTIME() 函数将返回当前系统的时间。 语法 示例 编写查询以显示当前系统的时间。 查询 在这里,我们编写了一个带有 CURTIME() 函数的 SELECT 查询来获取系统的当前时间。CurrentTime 是存储时间的别名。 执行上述查询后,我们得到以下输出
查询在系统中执行的时间是 18:49:07。因此,它作为输出显示。 4. DATE()使用 SQL 中的 DATE() 函数,您可以专门从 DATETIME 数据类型列中提取日期。 语法 示例 1 编写查询以显示给定日期和时间(即 2021-10-24 18:28:44)的日期。 查询 在这里,我们编写了一个带有 DATE() 函数的 SELECT 查询,以仅从传递给 DATE() 函数的日期和时间参数中获取日期。SHOW_DATE 是存储日期的别名。 执行上述查询后,我们得到以下输出
从日期和时间参数(即 '2021-10-24 18:28:44')中,日期值为 2021-10-24。因此,它作为输出显示。 示例 2 编写查询以显示 student 表中的所有详细信息,并包含 student 表的 DateTime_Birth 列的日期。 查询 在这里,我们编写了一个 SELECT 查询来获取 ID 和 Name。Date_of_Birth 是 DateTime_Birth 的别名。我们使用了带有 DATE() 函数的 Date_of_Birth 来仅获取日期。 执行上述查询后,我们得到以下输出
除了 DateTime_Birth 列之外,student 表中的所有记录都按原样显示。Date_of_Birth 列仅按要求显示日期。 5. EXTRACT()使用 SQL 中的 EXTRACT() 函数,我们可以根据需要提取日期和时间的特定部分:日、月、年、小时、分钟等。 语法 示例 1 编写查询以显示给定日期(即 2021 年 10 月 24 日)的年份。 查询 在这里,我们编写了一个带有 EXTRACT() 函数的 SELECT 查询,以从给定日期中获取年份。SHOW_YEAR 是存储年份的别名。 执行上述查询后,我们得到以下输出
'2021' 是给定日期中的年份。因此,它作为输出显示。 示例 2 编写查询以显示给定日期(即 2021 年 10 月 24 日)的月份。 查询 在这里,我们编写了一个带有 EXTRACT() 函数的 SELECT 查询,以从给定日期中获取月份。SHOW_MONTH 是存储月份的别名。 执行上述查询后,我们得到以下输出
给定日期中的月份值为 10。因此,它作为输出显示。 示例 3 编写查询以显示给定日期(即 2021 年 10 月 24 日)的日期。 查询 在这里,我们编写了一个带有 EXTRACT() 函数的 SELECT 查询,以从给定日期中获取日期。SHOW_DAY 是存储日期的别名。 执行上述查询后,我们得到以下输出
给定日期中的日期值为 24。因此,它作为输出显示。 示例 4 编写查询以显示给定时间(即 19:10:43)的小时。 查询 在这里,我们编写了一个带有 EXTRACT() 函数的 SELECT 查询,以从给定时间中获取小时值。SHOW_HOUR 是存储小时值的别名。 执行上述查询后,我们得到以下输出
给定时间中的小时值为 '19'。因此,它作为输出显示。 示例 5 编写查询以显示给定时间(即 19:10:43)的分钟。 查询 在这里,我们编写了一个带有 EXTRACT() 函数的 SELECT 查询,以从给定时间中获取分钟值。SHOW_MINUTE 是存储分钟的别名。 执行上述查询后,我们得到以下输出
给定时间中的分钟值为 '10'。因此,它作为输出显示。 示例 6 编写查询以显示给定时间(即 19:10:43)的秒。 查询 在这里,我们编写了一个带有 EXTRACT() 函数的 SELECT 查询,以从给定时间中获取秒值。SHOW_SECOND 是存储秒值的别名。 执行上述查询后,我们得到以下输出
给定时间中的秒值为 43。因此,它作为输出显示。 6. DATE_ADD()使用 SQL 中的 DATE_ADD() 函数,我们可以将特定的时间间隔添加到给定的日期。 语法 示例 1 编写查询以将 15 天的间隔添加到给定日期(即 2021 年 10 月 24 日)。 查询 在这里,我们编写了一个带有 DATE_ADD() 函数的 SELECT 查询,以将 15 天的间隔添加到给定的日期。NEW_DATE 是存储新日期的值的别名。 您将得到以下输出
在 2021-10-24 之后添加 15 天的间隔,新日期是 2021-11-08。 示例 2 编写查询以将 5 个月的间隔添加到给定日期(即 2021 年 10 月 24 日)。 查询 在这里,我们编写了一个带有 DATE_ADD() 函数的 SELECT 查询,以将 5 个月的间隔添加到给定的日期。NEW_DATE 是存储新日期的值的别名。 您将得到以下输出
在 2021-10-24 之后添加 5 个月的间隔,新日期是 2022-03-24。 示例 3 编写查询以将 25 年的间隔添加到给定日期(即 2021 年 10 月 24 日)。 查询 在这里,我们编写了一个带有 DATE_ADD() 函数的 SELECT 查询,以将 25 年的间隔添加到给定的日期。NEW_DATE 是存储新日期的值的别名。 您将得到以下输出
在 2021-10-24 之后添加 25 年的间隔,新日期是 2046-10-24。 7. DATE_SUB()使用 SQL 中的 DATE_SUB() 函数,我们可以从给定的日期中移除特定的时间间隔。 语法 示例 1 编写查询以从给定日期(即 2021 年 10 月 24 日)中移除 25 年的间隔。 查询 在这里,我们编写了一个带有 DATE_SUB() 函数的 SELECT 查询,以从给定的日期中移除 25 年的间隔。NEW_DATE 是存储新日期的值的别名。 您将得到以下输出
从 2021-10-24 移除 25 年的间隔后,新日期是 1996-10-24。 示例 2 编写查询以从给定日期(即 2021 年 10 月 24 日)中移除 5 个月的间隔。 查询 在这里,我们编写了一个带有 DATE_SUB() 函数的 SELECT 查询,以从给定的日期中移除 5 个月的间隔。NEW_DATE 是存储新日期的值的别名。 您将得到以下输出
从 2021-10-24 移除 5 个月的间隔后,新日期是 2021-05-24。 示例 3 编写查询以从给定日期(即 2021 年 10 月 24 日)中移除 15 天的间隔。 查询 在这里,我们编写了一个带有 DATE_SUB() 函数的 SELECT 查询,以从给定的日期中移除 15 天的间隔。NEW_DATE 是存储新日期的值的别名。 您将得到以下输出
从 2021-10-24 移除 15 天的间隔后,新日期是 2021-10-09。 8. DATEDIFF()使用 SQL 中的 DATEDIFF() 函数,我们可以得到两个给定日期之间相差的天数。 语法 示例 1 编写查询以计算两个给定日期(即 2021 年 10 月 24 日和 2021 年 10 月 9 日)之间的差异。 查询 在这里,我们编写了一个带有 DATE_DIFF() 函数的 SELECT 查询,以获取日期 2021-10-24 和 2021-10-09 之间的差异。Number_of_Days 是存储天数差异的别名。 您将得到以下输出
日期 2021-10-24 和 2021-10-09 之间相差 15 天。 示例 2 编写查询以计算两个给定日期(即 2018 年 5 月 5 日和 2008 年 5 月 5 日)之间的差异。 查询 在这里,我们编写了一个带有 DATE_DIFF() 函数的 SELECT 查询,以获取日期 2018-05-05 和 2008-05-05 之间的差异。Number_of_Days 是存储天数差异的别名。 您将得到以下输出
日期 2018-05-05 和 2008-05-05 之间相差 3652 天。 9. DATE_FORMAT()使用 SQL 中的 DATE_FORMAT() 函数,我们可以以格式良好的方式显示日期或时间相关信息。 在表列上使用 DATE_FORMAT 函数的语法 或 格式化特定日期的语法 示例 1 编写查询以以格式良好的方式显示给定日期(即 2021 年 10 月 24 日)。 查询 在这里,我们编写了一个带有 DATE_FORMAT() 函数的 SELECT 查询,以获取日期 2021-10-24 的格式。Formatted_Date 是存储格式化日期的别名。 您将得到以下输出
2021 年 10 月 24 日星期日是 2021-10-24 的格式化日期。 示例 2 编写查询以以格式良好的方式显示给定日期和时间(即 2021 年 10 月 24 日 22:30:17)。 查询 在这里,我们编写了一个带有 DATE_FORMAT() 函数的 SELECT 查询,以获取日期和时间 '2021-10-24 22:30:17' 的格式。Formatted_DateTime 是存储格式化日期和时间的别名。 您将得到以下输出
2021 年 10 月 24 日星期日 晚上 10:30:17 是 2021-10-24 22:30:17 的格式化日期和时间。 示例 3 编写查询以显示 student 列中的所有详细信息,并以格式良好的方式显示 DateTime_Birth 列。 查询 在这里,我们编写了一个带有 DATE_FORMAT() 函数的 SELECT 查询,以获取所有记录的日期和时间并进行格式化。Formatted_DateTime 是存储格式化日期和时间的别名。 您将得到以下输出
除了 DateTime_Birth 列之外,student 表中的所有记录都按原样显示。Formatted_DateTime 列仅按要求显示日期和时间。 下一个主题SQL 中的 DDL 命令 |
我们请求您订阅我们的新闻通讯以获取最新更新。