MySQL EXTRACT函数
MySQL中的EXTRACT()函数与DATE和DATETIME函数相关。 它用于从DATE和DATETIME值中提取部分内容 。例如,我们可以从函数参数中指定的DATE和DATETIME值中提取年份部分、月份部分、日期部分、分钟、秒、微秒等。MySQL从 4.0版本及更高版本 开始支持EXTRACT函数。
语法:
以下是MySQL中使用EXTRACT函数的示例语法:
EXTRACT(unit_value FROM date_value);
在上面的示例中,我们可以看到EXTRACT()函数接受两个参数, unit_value 和 date_value 。在这里,date_value表示我们想要提取部分的 日期 和 日期时间 值。而unit_value表示我们想要提取的日期部分。
unit_value参数可以使用以下在 MySQL 中有效的间隔:
- 天
- 天_小时
- 天_微秒
- 天_分钟
- 天_秒
- 小时
- 小时_微秒
- 小时_分钟
- 小时_秒
- 微秒
- 分钟
- 分钟_微秒
- 分钟_秒
- 月
- 季度
- 秒
- 秒_微秒
- 周
- 年
- 年_月
MySQL EXTRACT函数示例
让我们通过各种示例学习如何在MySQL中使用EXTRACT函数。
从日期时间中提取天数
执行以下语句以从 日期时间 中提取日期:
mysql> SELECT EXTRACT(DAY FROM '2020-07-15 08:06:44') AS DAY;
输出:
从DATETIME中提取DAY_HOUR
执行以下语句以从DATETIME中提取日期和小时:
mysql> SELECT EXTRACT(DAY_HOUR FROM '2020-07-15 08:06:44') AS DAY;
输出:
从DATETIME中提取DAY_MICROSECOND
执行以下语句从DATETIME中提取日期和微秒:
mysql> SELECT EXTRACT(DAY_MICROSECOND FROM '2020-07-15 08:06:44') AS DAY_MS;
输出:
从DATETIME中提取DAY_MINUTE
执行以下语句从DATETIME中提取日期和分钟:
mysql> SELECT EXTRACT(DAY_MINUTE FROM '2020-07-15 08:06:44') AS DAY_Min;
输出:
从DATETIME中提取DAY_SECOND
执行以下语句从DATETIME中提取日期和秒: mysql> SELECT EXTRACT(DAY_SECOND FROM ‘2020-07-15 08:06:44’) AS DAY_Sec;
“`
输出:
从DATETIME中提取HOUR
执行以下语句从DATETIME中提取小时:
mysql> SELECT EXTRACT(HOUR FROM '2020-07-15 08:06:44') AS Hrs;
输出:
从DATETIME中提取HOUR_MICROSECOND
执行以下语句从DATETIME中提取小时和微秒:
mysql> SELECT EXTRACT(HOUR_MICROSECOND FROM '2020-07-15 08:06:44') AS Hrs_MS;
输出:
从DATETIME中提取HOUR_MINUTE
执行以下语句从DATETIME中提取小时和分钟:
mysql> SELECT EXTRACT(HOUR_MINUTE FROM '2020-07-15 08:06:44') AS Hrs_Min;
输出:
从DATETIME中提取HOUR_SECOND
执行以下语句以从DATETIME中提取小时和秒:
mysql> SELECT EXTRACT(HOUR_SECOND FROM '2020-07-15 08:06:44') AS Hrs_Sec;
输出:
从DATETIME中提取MICROSECOND
执行以下语句从DATETIME中提取微秒:
mysql> SELECT EXTRACT(MICROSECOND FROM '2020-07-15 08:06:44') AS MS;
输出:
从DATETIME中提取MINUTE
执行以下语句从DATETIME中提取分钟:
mysql> SELECT EXTRACT(MINUTE FROM '2020-07-15 08:06:44') AS Min;
输出:
从DATETIME中提取SECOND
执行以下语句从DATETIME中提取second:
mysql> SELECT EXTRACT(SECOND FROM '2020-07-15 08:06:44') AS Sec;
输出:
从DATETIME中提取月份
执行以下语句从DATETIME中提取月份:
mysql> SELECT EXTRACT(MONTH FROM '2020-07-15 08:06:44') AS Month;
输出:
从DATETIME中提取YEAR
执行以下语句以从DATETIME中提取年份:
mysql> SELECT EXTRACT(YEAR FROM '2020-07-15 08:06:44') AS Yr;
输出:
从DATETIME中提取WEEK
执行下面的语句从DATETIME中提取周:
mysql> SELECT EXTRACT(WEEK FROM '2020-07-15 08:06:44') AS WK;
输出:
从DATETIME中提取QUARTER
执行以下语句以从DATETIME中提取季度:
mysql> SELECT EXTRACT(QUARTER FROM '2020-07-15 08:06:44') AS QT;
输出: