怎么用一个msyql 语句把几个相同的表结构的表放到一个表里面去最后导出来?

我现在有多个表是从7月1号到12月30号的每天生成一张表,现在老板让我把每个月的表内容汇总。数据库表就是图片中一样我想 可不可以用一条SQL语句通配符或者连表语句什么的把每个月的数据都单独列出来呢 我看到的是这个每天的表都是有规则生成的。不知道哪位大侠能指导一下谢我自己是这么写的SELECT FROM mas_sms_sent_2018_07_06 UNION SELECT FROM mas_sms_sent_2018_07_09 UNION SELECT FROM mas_sms_sent_2018_07_10 UNION select FROM mas_sms_sent_2018_07_12;内容是我想要的但是我想了一下30天 意味着我要30次 然后汇总成7月的 如果老板哪天不高心了让我汇总一年的怎么办 我这种笨办法肯定行不通 所以请教各位大神帮忙看看最好还能生成一个AS 一个7月的表 但是我mysql 是半桶水 不会怎么写。 比如 AS 表名(qiyue)![图片描述][2]

图片描述

阅读 2.5k
4 个回答

你既然可以实现一个月的,那你不如写个脚本,可以根据传的参数去改变sql语句,把对应的时间改一下,每次老板要你导的时候,你执行一下那个文件,然后传入老板给你的时间,这样会不会方便点,菜鸟一枚,没有好方法不要骂!

建议楼主写存储过程。可以写一个for loop把表名的字符串连接起来。

谁让你搞得老板不开心了呢,呵呵
都已经分成日表了,也就只能union了。
你要想方便点,就把这些表改造成分区表吧,按照表里的时间字段每日一个分区。这样从管理上跟日表没有多大区别,需要查数据的时候,只需要用时间字段限定范围即可,一个月,一年,半年,随便你定。在时间字段上建个索引,还能跑舒服点。

你这是异构存储。
可以监听 musql binlog,把所有数据写入到一张表里,然后从这张表读取。实现方案可以使用阿里巴巴开源的 canal。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题