1、MySQL 数据库
NOW() | 返回当前的日期和时间 |
CURDATE() | 返回当前的日期 |
CURTIME() | 返回当前的时间 |
DATE() | 提取日期或日期/时间表达式的日期部分 |
EXTRACT() | 返回日期/时间按的单独部分 |
DATE_ADD() | 给日期添加指定的时间间隔 |
DATE_SUB() | 从日期减去指定的时间间隔 |
DATEDIFF() | 返回两个日期之间的天数 |
DATE_FORMAT() | 用不同的格式显示日期/时间 |
使用DATE_FORMAT(数据库字段,'%Y%m%d')将时间类型字段格式为"yyyy-mm-dd"字符串格式
str_to_date(数据库字段,'%m.%d.%Y')将字符串类型字段格式为"yyyy-mm-dd"时间格式
2、SQL server 数据库
函数 | 描述 |
---|---|
GETDATE() | 返回当前日期和时间 |
DATEPART() | 返回日期/时间的单独部分 |
DATEADD() | 在日期中添加或减去指定的时间间隔 |
DATEDIFF() | 返回两个日期之间的时间 |
CONVERT() | 用不同的格式显示日期/时间 |
select year(getdate())
select month('2016-02-14 11:36:19.727')
select DAY(getdate()) --14
---获得指定时间类型部分
select datename(year, getdate()) ---2016
select datename(weekday, getdate()) ---星期几
--日期与字符串之间的转换函数
select cast('2016-11-14 11:24:43.900' as date)
select convert(date,'2016-11-14 11:24:43.900')
select CONVERT(varchar, getdate(), 120 ) ---2016-11-14 11:08:10
select CONVERT(varchar(10),getdate(),120)
select CONVERT(varchar, getdate(), 111 ) --2016/11/14
select CONVERT(varchar, getdate(), 112 ) --20161114
select CONVERT(varchar, getdate(), 102 ) --2016.11.14
-- 参数 结果
-- 100 05 8 2006 9:27PM
-- 101 05/08/2006
-- 102 2006.05.08
-- 103 08/05/2006
-- 104 08.05.2006
-- 105 08-05-2006
-- 106 08 05 2006
-- 107 05 08, 2006
-- 108 21:30:51
-- 109 05 8 2006 9:31:11
-- 110 05-08-2006
-- 111 2006/05/08
-- 112 20060508
-- 113 08 05 2006 21:31:59
-- 114 21:33:06:503
-- 120 2006-05-08 21:33:38
3、oracle时间处理函数
(1)使用TO_CHAR函数处理数字
TO_CHAR(number, '格式')
TO_CHAR(salary,’$99,999.99’);
(2)使用TO_CHAR函数处理日期
TO_CHAR(date,’格式’);
to_char(sysdate,'q') 季
to_char(sysdate,'yyyy')年
to_char(sysdate,'mm')月
to_char(sysdate,'dd')日
to_char(sysdate,'d')星期中的第几天
to_char(sysdate,'DAY')星期几
to_char(sysdate,'ddd')一年中的第几天
(3)TO_NUMBER
使用TO_NUMBER函数将字符转换为数字
TO_NUMBER(char[, '格式'])
(4) TO_DATE
使用TO_DATE函数将字符转换为日期
TO_DATE(char[, '格式'])