SQL 从日期中获取月份

2025年3月17日 | 阅读 3 分钟
  • 为了记住重要的日期,我们可以将它们存储在 SQL 的数据库表中。
  • 可能会出现一种情况,即您不想从 SQL 表的列中检索整个日期,而只想从表的列中获取月份。
  • SQL 中提供了不同的日期函数,利用这些函数,我们可以根据需要从列中获取日期的不同部分。
  • SQL 中的 **MONTH()** 函数用于获取存储在表列中的整个日期中的月份。
  • 除了检索默认格式存储的日期外,SQL 中还有一个 DATE_FORMAT() 函数,可以使用它以更易读的格式检索日期值。

让我们看几个实际的例子来更清楚地理解这个概念。我们将使用 MySQL 数据库来编写所有查询。

然后,我们将编写以下查询在 'dbs' 数据库中创建一个表


SQL get month from the date

在上面的查询中,名为 'DateOfBirth' 的列将存储日期,因为此列的数据类型被设置为 'DATE'。

现在,我们将编写一个查询来向 student 表插入记录。


SQL get month from the date

我们将执行 SELECT 查询来验证所有记录是否已成功插入 student 表。

您将获得以下表格作为输出:

ID名称百分比sLocation出生日期
1Manthan Koli79德里2003-08-20
2Dev Dixit75Pune1999-06-17
3Aakash Deshmukh87孟买1997-09-12
4Aaryan Jaiswal90金奈2005-10-02
5Rahul Khanna92Ambala1996-03-04

以上查询结果表明,存储在 'DateOfBirth' 列中的日期以其存储的默认格式检索,即 'YYYY-MM-DD'。

示例 1

编写一个查询以仅从 'DateOfBirth' 列中检索日期的特定部分,即月份。

查询

Month() 函数用于 SELECT 查询,并应用于 DateOfBirth 列以仅从整个日期中检索月份。 'MonthOfBirth' 是使用 AS 关键字给出的别名,用于存储日期中的月份。

您将获得以下表格作为输出:

ID名称百分比地点MonthOfBirth
1Manthan Koli79德里8
2Dev Dixit75Pune6
3Aakash Deshmukh87孟买9
4Aaryan Jaiswal90金奈10
5Rahul Khanna92Ambala3

结果表明,所有学生的出生月份都已成功检索到 'MonthOfBirth' 列中。

示例 2

编写一个查询以从 'DateOfBirth' 列中以更易读的格式检索日期的特定部分,即月份。

查询

您将获得以下表格作为输出:

ID名称百分比地点MonthOfBirth
1Manthan Koli79德里八月
2Dev Dixit75Pune六月
3Aakash Deshmukh87孟买九月
4Aaryan Jaiswal90金奈十月
5Rahul Khanna92Ambala三月

DATE_FORMAT() 函数用于 SELECT 查询,并应用于 DateOfBirth 列以从整个日期中以更易读的格式检索月份。 'MonthOfBirth' 是使用 AS 关键字给出的别名,用于存储日期中的月份。


下一个主题SQL 中的 Savepoint