随着时间推移,会有人员入职,离职,调动
现在想查询某一天,如2017年5月1日当时的人员情况并导出
比如人员A在2018年3月离职,
那么在选择2017年5月1日这个时间节点,查询出来的人员A是在职
在选择2018年5月1日这个时间节点,查询出来的人员A是离职
如果人员有调动的,用某个时间点查询,也只查询出当时所在部门和岗位
我现在人员状态存在一个字段,怎么做才能在查询的时候,选择不同时间点,查到不同状态
随着时间推移,会有人员入职,离职,调动
现在想查询某一天,如2017年5月1日当时的人员情况并导出
比如人员A在2018年3月离职,
那么在选择2017年5月1日这个时间节点,查询出来的人员A是在职
在选择2018年5月1日这个时间节点,查询出来的人员A是离职
如果人员有调动的,用某个时间点查询,也只查询出当时所在部门和岗位
我现在人员状态存在一个字段,怎么做才能在查询的时候,选择不同时间点,查到不同状态
这个看你的表数据量有多大,如果数据量不大的话,可以分别把 在职、离职、调动的人员分别查出来,可以根据入职时间、离职时间、状态 分别进行
筛选,最后把三个结果union all 到一起,
例如 :
select * from table where date1>'2019-01-01' and date2> '2019-02-01' and state ='1' union all
select * from table where date1>'2019-01-01' and date2> '2019-02-01' and state ='2' union all
select * from table where date1>'2019-01-01' and date2> '2019-02-01' and state ='3'
以上希望可以帮助到以,如果数据量很大的话,最好加一些索引进去,或者考虑别的方法