zoukankan      html  css  js  c++  java
  • mysql处理大数据合并的另一种方法

    在做项目的时候我碰到了一个这样的场景,有两张表,数据都在300W左右,现在要求在生产环境中合并这两张表为一张表,本来想用sql语句insert into select来实现,后来发现这样操作速度很慢,因为里面有计算逻辑。大概的表结构如下:

    table1

    id tel credits1

    table2

    id tel credits2 points

    合并后的表为

    table

    id tel credits points

    其中credits = credits1 + credits2

    我采用的实现方法是这样的:

    第一步、先建一个视图。

    名为table

    sql语句大致如下:

    select table2.id,table2.tel,table1.credits1 + table2.credits2 as credits, table2.points from table2 left join table1 on table1.tel = table2.tel

    上线运行一天左右,基本没问题之后。找个运行空闲期,关闭项目。

    第二步、导出视图中的数据。

    第三步、重命名视图名称为table_copy。

    第四步、新建表table,字段为id tel credits points

    第五步、把视图中的数据导入到table中。

  • 相关阅读:
    初涉网络安全领域
    pythontip上的数据结构和算法练习题
    学c++需要先学c语言吗?
    田园将芜胡不归
    java学习视频
    微软越来越喜欢Github(转载)
    指针(一级指针、二级指针)
    数字盒子
    点结构Tpoint
    枚举类型
  • 原文地址:https://www.cnblogs.com/xpbb/p/3300440.html
Copyright © 2011-2022 走看看