zoukankan      html  css  js  c++  java
  • 建立测试表和数据

    -- 建立源表
    create table t_source  
    (  
      item_id int,  
      created_time datetime,  
      modified_time datetime,  
      item_name varchar(20),  
      other varchar(20)  
    );  

    -- 建立目标表
    create table t_target like t_source; 

    -- 生成100万测试数据,其中有50万created_time和item_name重复
    delimiter //      
    create procedure sp_generate_data(http://www.amjmh.com)    
    begin     
        set @i := 1;   
        
        while @i<=500000 do  
            set @created_time := date_add('2017-01-01',interval @i second);  
            set @modified_time := @created_time;  
            set @item_name := concat('a',@i);  
            insert into t_source  
            values (@i,@created_time,@modified_time,@item_name,'other');  
            set @i:=@i+1;    
        end while;  
        commit;    
        
        set @last_insert_id := 500000;  
        insert into t_source  
        select item_id + @last_insert_id,  
               created_time,  
               date_add(modified_time,interval @last_insert_id second),  
               item_name,  
               'other'   
          from t_source;  
        commit;
    end     
    //      
    delimiter ;     
        
    call sp_generate_data();  

    -- 源表没有主键或唯一性约束,有可能存在两条完全一样的数据,所以再插入一条记录模拟这种情况。
    insert into t_source select * from t_source where item_id=1;
            源表中有1000001条记录,去重后的目标表应该有500000条记录。

    mysql> select count(*),count(distinct created_time,item_name) from t_source;
    +----------+----------------------------------------+
    | count(*) | count(distinct created_time,item_name) |
    +----------+----------------------------------------+
    |  1000001 |                                 500000 |
    +----------+----------------------------------------+
    1 row in set (1.92 sec)
    ---------------------

  • 相关阅读:
    php责任链模式
    php工厂模式
    php观察者模式
    php单例模式
    php的抽象类
    Mysqli的常用函数
    PDO的基本操作
    算法--各种算法
    file_get_post实现post请求
    redis的5种数据结构的使用场景介绍
  • 原文地址:https://www.cnblogs.com/hyhy904/p/11311204.html
Copyright © 2011-2022 走看看