获取当月第一天

Oracle写法:

1
trunc(add_months(last_day(sysdate), -1) + 1)

MySQL写法:

1
DATE_ADD(now(),interval -day(now())+1 day)

将当前时间添加-1个月

Oracle写法:

1
add_months(sysdate, -1)

MySQL写法:

1
ADDDATE(NOW(), INTERVAL -1 MONTH)

将当前时间添加N个月后转为yyyy-MM格式

Oracle写法:

1
to_date(to_char(add_months(sysdate, -#{start}), 'yyyy-mm'),'yyyy-mm')

MySQL写法:

1
ADDDATE(NOW(), INTERVAL -#{start} MONTH)

时间转字符串

Oracle写法:

1
to_char(sysdate, "yyyy-mm-dd hh24:mi:ss")

MySQL写法:

1
date_format(now(), "%Y-%m-%d %T")

字符串转日期

Oracle写法:

1
to_date(REG_DATE,'yyyy-mm-dd hh24:mi:ss')

MySQL写法:

1
str_to_date("2022-12-12 00:00:00", "%Y-%m-%d %T")
Oracle时间格式 MySQL时间格式
yyyy-mm-dd hh24:mi:ss %Y-%m-%d %T
yyyy-mm-dd %Y-%m-%d
yyyy-mm %Y-%m

计算当前时间到 某个时间 的秒值差

Oracle写法:

1
(SYSDATE- STR_TO_DATE(b.CREATE_TM, '%Y-%m-%d %T')) * 24 * 60)

MySQL写法:

1
(TO_DAYS(NOW()) - TO_DAYS(STR_TO_DATE(b.CREATE_TM,"%Y-%m-%d %T"))) * 24 * 60

Oracle中直接计算两个日期天数差值

Oracle写法:

1
SYSDATE - STR_TO_DATE(b.CREATE_TM, '%Y-%m-%d %T'))

MySQL写法:

1
TO_DAYS(NOW())  - TO_DAYS(STR_TO_DATE(b.CREATE_TM,"%Y-%m-%d %T")))