SQL |日期函数 (Set-2)
在 SQL 中,日期对于新手来说很复杂,因为在使用数据库时,表中日期的格式必须与输入日期匹配才能插入。在各种场景中,而不是日期,使用日期时间(时间也与日期有关)。
一些日期函数已经在 Set-1 中讨论过了。在这篇文章中,已经讨论了剩余的日期函数。
以下是 SQL 中使用的其余日期函数:
- MICROSECOND():它返回日期值的微秒部分。
Syntax: SELECT MICROSECOND("2018-07-18 09:12:00.000345");
输出: 345
- MINUTE():它返回日期值的分钟部分。
Syntax: SELECT MINUTE("2018-07-18 09:12:00");
输出: 12
- MONTH():它返回日期值的月份部分。
Syntax: SELECT MONTH ('2018/07/18')AS MONTH;
输出: 7
- MONTHNAME():它返回一个日期的完整月份名称。
Syntax: SELECT MONTHNAME("2018/07/18");
输出:七月
- NOW():返回当前日期和时间。
Syntax: SELECT NOW();
输出: 2018-07-18 09:14:32
- PERIOD_ADD():它需要一个周期并为其添加指定的月数。
Syntax: SELECT PERIOD_ADD(201803, 6);
输出: 201809
- PERIOD_DIFF():它返回两个时期之间的月差。
Syntax: SELECT PERIOD_DIFF(201810, 201802);
输出: 8
- QUARTER():它返回日期值的四分之一部分。
Syntax: SELECT QUARTER("2018/07/18");
输出: 3
- SECOND():它返回日期值的第二部分。
Syntax: SELECT SECOND("09:14:00:00032");
输出: 0
- SEC_TO_TIME():它将数字秒转换为时间值。
Syntax: SELECT SEC_TO_TIME(1);
输出: 00:00:01
- STR_TO_DATE():它接受一个字符串并返回一个由格式掩码指定的日期。
Syntax: SELECT STR_TO_DATE("JULY 18 2018", "%M %D %Y");
输出: 0018-07-18
- SUBDATE():它返回一个日期,在该日期之后减去某个时间/日期间隔。
Syntax: SELECT SUBDATE("2017-06-15", INTERVAL 10 DAY);
输出: 2017-06-05
- SUBTIME():在减去某个时间间隔后返回时间/日期时间值。
Syntax: SELECT SUBDATE("2018/07/18", INTERVAL 10 DAY);
输出: 2018-07-18 09:15:17.542768
- SYSDATE():返回当前日期和时间。
Syntax: SELECT SYSDATE();
输出: 2018-07-18 09:19:03
- TIME():它从时间/日期时间表达式中提取时间值。
Syntax: SELECT TIME("09:16:10");
输出: 09:16:10
- TIME_FORMAT():它按照格式掩码指定时间格式化。
Syntax: SELECT TIME_FORMAT("09:16:10", "%H %I %S");
输出: 09 09 10
- TIME_TO_SEC():它将时间值转换为数字秒。
Syntax: SELECT TIME_TO_SEC("09:16:10");
输出: 33370
- TIMEDIFF():它返回两个时间/日期时间值之间的差异。
Syntax: SELECT TIMEDIFF("09:16:10", "09:16:04");
输出: 00:00:06
- TIMESTAMP():它将表达式转换为日期时间值,如果指定,则向该值添加可选的时间间隔。
Syntax: SELECT TIMESTAMP("2018-07-18", "09:16:10");
输出: 2018-07-18 09:16:10
- TO_DAYS():它将日期转换为数字天数。
Syntax: SELECT TO_DAYS("2018-07-18");
输出: 737258
- WEEK():它返回日期值的星期部分。
Syntax: SELECT WEEK("2018-07-18");
输出: 28
- WEEKDAY():它返回日期值的工作日索引。
Syntax: SELECT WEEKDAY("2018-07-18");
输出: 2
- WEEKOFYEAR():它为日期值返回一年中的第几周。
Syntax: SELECT WEEKOFYEAR("2018-07-18");
输出: 29
- YEAR():它返回日期值的年份部分。
Syntax: SELECT YEAR("2018-07-18");
输出: 2018
- YEARWEEK():它返回日期值的年份和星期。
Syntax: SELECT YEARWEEK("2018-07-18");
输出: 201828