MYSQL里的select into 替代用法

之前的SELECT INTO用于把一张表的一部分数据或者所有数据复制到另一张表的,而且新表是不存在,会自动 创建的,这个用在MYSQL里不行的。。今天上网搜索了下。。用下面的SQL就行了



CREATE TABLE api_order_201906 (SELECT *  FROM api_order WHERE orderadddate BETWEEN '2019-06-01' AND '2019-07-01')  

其中api_order_201906表是不存在的,执行完上面的语句后会自动创建


但是我在服务器上执行上面的SQL出错了。 Statement violates GTID consistency: CREATE TABLE ... SELECT.


改用下面的SQL就行了。。。


  • CREATE TABLE api_order_201907 LIKE api_order;


    INSERT INTO api_order_201907 SELECT *  FROM api_order WHERE orderadddate BETWEEN '2019-07-01' AND '2019-08-01'