Rumah  >  Soal Jawab  >  teks badan

Mysql多表查询问题

场景:
系统每天会生成一个mysql数据表,里面存储的当天的模块访问量,假设字段为pv。如何统计一个月的模块访问量呢?每个表的结构都是一样的。

非常感谢!

大家讲道理大家讲道理2741 hari yang lalu1955

membalas semua(12)saya akan balas

  • PHP中文网

    PHP中文网2017-04-17 13:04:42

    1. 如果是每天的数据量不是特别大,可以按月分表,这样问题就只需要查询统计一张表了;
    2. 使用视图,创建多表视图,但是如果数据量很大得话,需要很长时间。
    3. 在数据量大的情况下,只是为了记录很统计,关系数据库就不是一个很好的选择了,可以考虑一下NoSQL,比如Hbase。

    balas
    0
  • 高洛峰

    高洛峰2017-04-17 13:04:42

    = =
    MySQL数据表不是可以无限建的,你们这TM是什么设计。。。
    建议回家看看数据库设计的书先。。。
    一开始都放在一个表里,根本就不会这么蛋疼了啊???
    你们有考虑性能和可维护性的问题吗???

    balas
    0
  • 伊谢尔伦

    伊谢尔伦2017-04-17 13:04:42

    多表建立视图试试

    balas
    0
  • 迷茫

    迷茫2017-04-17 13:04:42

    select count(1) from pv_150506
    union all
    select count(1) from pv_150507
    union all
    ........

    foreach结果集,相加汇总。

    balas
    0
  • 天蓬老师

    天蓬老师2017-04-17 13:04:42

    每天都自己创建一个数据表? 你是疯了

    balas
    0
  • 天蓬老师

    天蓬老师2017-04-17 13:04:42

    我们来假设 他是按月自动建表,每个表的数据超多

    这样来进行搜索

    查询的时候 联表合并查询呗
    动态生成查询语句

    balas
    0
  • 黄舟

    黄舟2017-04-17 13:04:42

    这表分的,也是惊天动地

    balas
    0
  • PHPz

    PHPz2017-04-17 13:04:42

    日志型记录表是这样设计的,频繁的插入会锁定查询操作。在linux可以写下shell脚本统计pv访问量。

    balas
    0
  • 黄舟

    黄舟2017-04-17 13:04:42

    哥 这是分表思想指导建的吗?

    balas
    0
  • PHP中文网

    PHP中文网2017-04-17 13:04:42

    其实我觉得看用户场景的,如果一天的数据真的是千百万行级别的,分天制造表也不见得是一个糟糕的决定。

    balas
    0
  • Batalbalas