SQL |日期函数 (Set-1)
在 SQL 中,日期对于新手来说很复杂,因为在使用数据库时,表中日期的格式必须与输入日期匹配才能插入。在各种场景中,而不是日期,使用日期时间(时间也与日期有关)。
一些重要的日期函数已经在上一篇文章中讨论过了。这篇文章的基本思想是了解所有日期函数的工作原理或语法:
下面是 SQL 中使用的日期函数:
- ADDDATE():它在添加了某个时间/日期间隔后返回一个日期。
Syntax: SELECT ADDTIME("2018-07-16 02:52:47", "2");
输出: 2018-07-16 02:52:49
- ADDTIME():它在添加了某个时间间隔后返回时间/日期时间。
Syntax: SELECT ADDTIME("2017-06-15 09:34:21", "2");
输出: 2017-06-15 09:34:23
- CURDATE():它返回当前日期。
Syntax: SELECT CURDATE();
输出: 2018-07-16
- CURRENT_DATE():返回当前日期。
Syntax: SELECT CURRENT_DATE();
输出: 2018-07-16
- CURRENT_TIME():返回当前时间。
Syntax: SELECT CURRENT_TIME();
输出: 02:53:15
- CURRENT_TIMESTAMP():返回当前日期和时间。
Syntax: SELECT CURRENT_TIMESTAMP();
输出: 2018-07-16 02:53:21
- CURTIME():返回当前时间。
Syntax: SELECT CURTIME();
输出: 02:53:28
- DATE():它从日期或日期时间表达式中提取日期值。
Syntax: SELECT DATE("2017-06-15");
输出: 2017-06-15
- DATEDIFF():它返回两个日期值之间的天数差。
Syntax: SELECT DATEDIFF("2017-06-25", "2017-06-15");
输出: 10
- DATE_ADD():它在添加了某个时间/日期间隔后返回一个日期。
Syntax: SELECT DATE_ADD("2018-07-16", INTERVAL 10 DAY);
输出: 2018-07-16
- DATE_FORMAT():它格式化由格式掩码指定的日期。
Syntax: SELECT DATE_FORMAT("2018-06-15", "%Y");
输出: 2018
- DATE_SUB():它在减去某个时间/日期间隔后返回一个日期。
Syntax: SELECT DATE_SUB("2017-06-15", INTERVAL 10 DAY);
输出: 2018-07-16
- DAY():它返回日期值的日期部分。
Syntax: SELECT DAY("2018-07-16");
输出: 16
- DAYNAME():它返回日期的工作日名称。
Syntax: SELECT DAYNAME('2008-05-15');
输出:星期四
- DAYOFMONTH():它返回日期值的日期部分。
Syntax: SELECT DAYOFMONTH('2018-07-16');
输出: 16
- DAYWEEK():它返回日期值的工作日索引。
Syntax: SELECT WEEKDAY("2018-07-16");
输出: 0
- DAYOFYEAR():它返回日期值的一年中的哪一天。
Syntax: SELECT DAYOFYEAR("2018-07-16");
输出: 197
- EXTRACT():它从日期中提取部分。
Syntax: SELECT EXTRACT(MONTH FROM "2018-07-16");
输出: 7
- FROM_DAYS():它从一天的数字表示中返回一个日期值。
Syntax: SELECT FROM_DAYS(685467);
输出: 1876-09-29
- HOUR():它返回日期值的小时部分。
Syntax: SELECT HOUR("2018-07-16 09:34:00");
输出: 9
- LAST_DAY():它返回给定日期该月的最后一天。
Syntax: SELECT LAST_DAY('2018-07-16');
输出: 2018-07-31
- LOCALTIME():返回当前日期和时间。
Syntax: SELECT LOCALTIME();
输出: 2018-07-16 02:56:42
- LOCALTIMESTAMP():返回当前日期和时间。
Syntax: SELECT LOCALTIMESTAMP();
输出: 2018-07-16 02:56:48
- MAKEDATE():它返回特定年份的日期和日期值。
Syntax: SELECT MAKEDATE(2009, 138);
输出: 2009-05-18
- MAKETIME():返回某个小时、分钟、秒组合的时间。
Syntax: SELECT MAKETIME(11, 35, 4);
输出: 11:35:04