现在要根据一些查询条件来查询表里的记录。。
如有表:
table20061
table20062
table20063等。。这些表是每月自动生成的
表里的字段有sendtime,id
现在要跟据选择的日期查询出表里某日期间的记录
请问要怎么实现呢?
想了好久都没想出来
查询条件为sendtime
主要问题就是搞不懂要怎么查询多个表。。。
因为选择的日期不确定,所以不知道要查几个表。。
简单的处理方式就是将这些表union all后作一个视图即:
create view alltable
as
select * from table20061 union all
select * from table20062 union all
select * from table20063
-----------------------------------
这样就形成了一个大表。
由于 那些表是每月自动生成的,,所以建视图不好建吧。。。
形成一张大表,再从大表里查询记录是吗?
具体代码要怎么写呀。。。?
大家帮帮忙吧
up
最佳的方式是通过用户输入的sendtime的来union all 表
如:
输入2006-01-01到2006-12-01
那么可以在存储过程中将表动态的union all
select * from table200601 union all
select * from table200602 union all
....
select * from table200611 union all
select * from table200612
当然如果存在跨年处理会麻烦一点,如:
输入2006-11-01到2006-01-01
那么在动态处理的时候就不仅是月份的动态处理还要有年的处理。
上述都是原理,仅供参考。
视图是一个虚拟的表,建立好视图如 friendlyFour(web开发四人组) 说道的
视图名称为:alltable
之后查询就跟其他查询一样了
select * from all table ....就可以了
你的表是自动生成的,视图可以在表自动生成的同时,也修改视图
create view alltable
as
select * from table20061 union all
select * from table20062 union all
select * from table20063 nuion all
........
| 论坛热门帖子: | [lch203] 写得蛮好的linux学习笔记(10-21) [黑马制造] 学习java的30个目标(10-19) [笑傲股林] 做测试半年了,有点迷茫,应该再学些什么提高自己的测试水平和测试能力呢?(10-19) [udp8589] 大家用google的来吱一声? 用百度的~~也来报道下?(10-18) [沂偌掳兆] 本人总结的一些认为C++比较经典的书籍,希望对大家有用(10-18) |
| TAG标签: | 显示 记录 并且 相同 查询 多个 结构 如何 sql all union |
注册
个人空间
