我需要从员工聘用日期中减去月份
员工聘用日期= 12/08/2018
以前的经验= 0.92 (即11个月)
我想要这样的计算
聘用日期-以前的经验=新聘用日期
对此有什么功能吗?
发布于 2019-07-31 21:12:16
你要找的是add_months函数。
它接受两个参数:日期和您试图添加的月数。
如果您将负数作为第二个参数传入,您将减去月份。
例如:
select to_date('23/07/2019', 'dd/mm/yyyy') dt,
add_months(to_date('23/07/2019', 'dd/mm/yyyy'), -1) prev_month_dt
FROM dual;
DT PREV_MONTH_DT
----------- -------------
23/07/2019 23/06/2019发布于 2019-07-31 21:11:52
你可以试着从雇佣日期中减去这么多天:
SELECT
date_hire,
date_hire - 365*exp AS hire_date_new
FROM yourTable;这假设一年是365天,但严格来说并非如此,因为闰年有366天。希望你不会介意早点或晚点雇人。
发布于 2019-07-31 21:12:12
您可以使用add_months()添加一年的一小部分:
select add_months(hiredate, - prev_exp * 12)或转换为天:
select hiredate - 365 * prev_exphttps://stackoverflow.com/questions/57291515
复制相似问题