mysql合并两个表

来源:互联网 发布:it行业 云计算 编辑:程序博客网 时间:2024/05/01 10:23

背景描述:

表A 字段:id,  deal_time          deal_amount       deal_type

                         (交易时间)     (交易金额)         (交易类型)

                    1    2016.11.20                 10                        0

                    1    2016.11.21                 40                        0

                    1    2016.11.22                 15                        1

                    2    2016.11.20                 15                        0

                    2    2016.11.21                 10                        0

                    2    2016.11.22                 10                        0

                    3    2016.11.20                 10                        1

现想统计交易类型为 0 的每个 id 的交易总金额,及交易次数即:

表B 字段: id,   sum_amount     deal_times  ...(其他属性)

                                 交易总金额         交易次数

                    1              50                          2

                    2              35                          3

方法:借用临时表

     step1: 创建一个临时表:
           create  temporary table tmp(
                id  int,
               deal_sum_amount  int,
               deal_times int
               index(id)
             ) char set utf8;

      step2:  将查询的结果放入临时表
             insert into tmp select id, sum(deal_amount), count(id) from A where deal_type = 0 group by id;
   
     step3: 更新表
              update B, tmp t set B.sum_amount = t. deal_sum_amount , B . deal_times = t . deal_times where B.id = t . id;
            
 




                    



                  

0 0
原创粉丝点击