MySql 多表统计汇总

祁之所予白之所付 2010-12-15 11:50:33
现状:
数据库中目前是分表存储每日记录,表名格式大概如下:
tbl_rpt_101201
tbl_rpt_101202
tbl_rpt_101203
......
tbl_rpt_101215

目前可以通过 select count(*) from tbl_rpt_101201 where result ='1' 从单表中获取满足条件行数;

如何搜索某个时间段内的多张表,以表格形式展示结果:
count(*)
tbl_rpt_101201 xx
tbl_rpt_101202 xx
tbl_rpt_101203 xx
......
tbl_rpt_101215 xx

新手入门,望不吝赐教!
...全文
232 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
Sigh~

谢了。。反正现在人力价格很便宜。。。
ACMAIN_CHM 2010-12-15
  • 打赏
  • 举报
回复
[Quote]但是有数十张表呢? 是否可以通过引入变量的方式 通过循环来实现?[/Quote]那你需要写程序或者存储过程。 MYSQL本身的SQL语句并不支持这种需求。
  • 打赏
  • 举报
回复
回acmain_chm:
通过这个方式确实可以,但是如果只是几个表,那手工操作还行;
但是有数十张表呢? 是否可以通过引入变量的方式 通过循环来实现?
ACMAIN_CHM 2010-12-15
  • 打赏
  • 举报
回复
select 'tbl_rpt_101201', count(*) from tbl_rpt_101201 where result ='1'
union all
select 'tbl_rpt_101202', count(*) from tbl_rpt_101202 where result ='1'
union all
select 'tbl_rpt_101203', count(*) from tbl_rpt_101203 where result ='1'
union all
...
union all
select 'tbl_rpt_101215', count(*) from tbl_rpt_101215 where result ='1'

56,687

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧