一:若是要插入目標表不存在:mysql
select * into 目標表 from 表 where ...sql
二:若是要插入目標表已經存在:數據庫
insert into 目的表 select * from 表 where 條件服務器
三:若是是跨數據庫操做的話: 怎麼把A數據庫的atable表所查詢的東西,所有插入到B 數據庫的btable表中blog
select * into B.btable from A.atable where ...table
一樣,若是是跨服務器的,也是能夠的。class
select count( case when rule_name='RULE_1' then shop_id end) as risk_rule_1 , count( case when rule_name='RULE_2' then rule_name end) as risk_rule_2 , count( case when rule_name='RULE_3' then rule_name end) as risk_rule_3 , count( case when rule_name='RULE_4' then rule_name end) as risk_rule_4 , count( case when rule_name='RULE_5' then rule_name end) as risk_rule_5 from select_table where date(check_time)=20170828; +-------------+-------------+-------------+-------------+-------------+ | risk_rule_1 | risk_rule_2 | risk_rule_3 | risk_rule_4 | risk_rule_5 | +-------------+-------------+-------------+-------------+-------------+ | 0 | 18 | 0 | 1 | 0 | +-------------+-------------+-------------+-------------+-------------+ insert into insert_table (risk_rule_1,risk_rule_2,risk_rule_3,risk_rule_4,risk_rule_5) select count( case when rule_name='RULE_1' then shop_id end) as risk_rule_1 , count( case when rule_name='RULE_2' then rule_name end) as risk_rule_2 , count( case when rule_name='RULE_3' then rule_name end) as risk_rule_3 , count( case when rule_name='RULE_4' then rule_name end) as risk_rule_4 , count( case when rule_name='RULE_5' then rule_name end) as risk_rule_5 from select_table where date(check_time)=20170828;
mysql> select * from risk_cash_rules_number\G; *************************** 1. row *************************** id: 1 trusted_rule_1: 0 trusted_rule_2: 0 trusted_rule_3: 0 risk_rule_1: 0 risk_rule_2: 18 risk_rule_3: 0 risk_rule_4: 1 risk_rule_5: 0 date: 19710101 1 row in set (0.00 sec)