求多表联合查询方法 情况是:数据库中有多张结构相同的表,就是每个月生成一张,里面的各个字段都是一样的,就是数据按时间增加。每张表的名称是相近的一时间命名的,如:table201201 这是2012年1月的表。 现在想要做个报表查询一段时间的数据,可能只涉及一张表,也可能很多张表一起查询。怎么搞?? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 记得有个union方法来着,具体操作忘了,你也可以建一个临时表用循环把所有表的内容添加进去,对临时表进行操作 忘了说了不想用临时表来做select * from ( select * from t1 union all select * from t2 union all select * from t3 union all select * from t4 )a where insert_time between ... and ...这个貌似可以但是我要做到*里面内容太多不会用 如果查询条件不太复杂的话,可以从拆分查询入手,只在对应时间的表里面查询。毕竟查最近的数据会相对多点。union的缺点是数据量大,而且大部分数据可能是很少需要查询。 既然是不同的表,union就是首选了可以在查询每个表时加where条件后再union,而不是union后再加where条件尽量优化条件,从左至右,能排除最多数据的条件放左边 corn1的方法不错,把原来的当成明细按照查询或条件进行操作,不过会用union还是很强大的 有关ClientDataSet 添加 复选框 问题 socket发送record类型变量,怎么会这样?? 求救:关于图片按钮三种状态的控件哪里有? 为什么按F7调试时不能按行进行?而是像按了F9一样就直接运行了? 初学Delphi该看什么书??? database控件连接domino数据库 怎样才能将JPG显示在窗体上? 谁能帮我解决这个问题,要多少分给多少分!!!! 请大家帮忙!听说这里个个是高手! 各位DELPHI前辈,请问如何在DELPHI中实现“PING”命令,谢谢!!! 请问一下在Access里面建一个虚拟表,或者视图怎么弄 关于抛异常问题
select * from
(
select * from t1
union all
select * from t2
union all
select * from t3
union all
select * from t4
)a where insert_time between ... and ...
这个貌似可以但是我要做到*里面内容太多不会用
可以从拆分查询入手,只在对应时间的表里面查询。
毕竟查最近的数据会相对多点。union的缺点是数据量大,而且大部分数据可能是很少需要查询。
可以在查询每个表时加where条件后再union,而不是union后再加where条件
尽量优化条件,从左至右,能排除最多数据的条件放左边