怎么根据不同的日期,查询不同的表,
举个例子,今天是08月25,我就查data_0809这个表,
10月01号,就查data_1001这个表,
以此类推,每天次只查一张表。
一共365个表,每天根据日期查询不同的表,
大概思路是获取当i前时间,然后根据获取时间的日月来和表来对应,比如表的尾号对应成功就查这个表,
求解。
你想要的功能在以前项目中,很多企业会这么干的,实现分表。减少数据量,但是在Oracle中,你没必要这个干,直接建一张按时间分区的分区表即可,规划好分区表之后,分区对上层应用是透明的,你可以
直接select * from 分区表 where 条件=日期,只要条件是分区键Oracle会自动根据时间来完成数据该往哪个分区插入或者从哪个分区检索。像你这种直接365天每天检索一个表的,分区表太适合了。
Oracle提供了多种分区策略。在其他数据库中你需要干的活,在Oracle不需要你自己去干。如果你硬要自己写,亲,请相信我,这个是不建议一条SQL搞定的,你需要采用多条SQL来处理。
这么多人回答竟然没人提分区,全在上层应用来考虑解决方案,真的是非常无语。。
后台是用什么技术实现的呢?mybatis吗?动态传表名即可。
你可以通过存储过程拼接表名。