ORACLE 数据库,存在多张表,字段数不一样但是结构类似,有一个字段是 time,如何查询多张表中最近的 100 条数据? 是在数据库中查询处理好还是写出来在业务逻辑中查询比较好?请教大家,谢谢。数据库节点不太活跃,发在这里了。
1
avichen Mar 19, 2018
完全没 get 到你这个问题的点,是不是要按时间排序后前的 100 条记录?
查询语句后面 where 加上 ROWNUM<100,直接 sql 里面就完成了 |
2
akira Mar 19, 2018
怀疑 lz 的需求是 取出这 N 张表合并以后的最近 100 条记录
|
3
sun1991 Mar 20, 2018 via Android 这种情况,肯定是每张表都取前 100 条数据,然后合并排序再取最终结果的 100 条数据了。
完全放在数据库端好处是传输数据少些,毕竟最终只需要传 100 条数据。坏处是 sql 很长,难看。 放在业务逻辑中的话,结构类似,查询函数可能复用的话,我觉得好维护些。 |
4
keller Mar 20, 2018
新建一个集合表
用来记录 多个表的表名 id time 然后从这个表查询 |