![](/img/trans.png)
[英]PHP & MySQL: Insert select result into table with id auto_increment
[英]MYSQL: Insert one table into the beginning of another and set the auto_increment
我有php-script,每30秒发布一次
到MYSQL表A (约100K列)。 表A如下所示(sql_id是AUTO_INCREMENT列号):
另外,我有表B (约10万列),该表由与A相同的数据组成,但用于上一时期(2016年1月27日之前)。 因此, A恰好从此刻开始,然后B结束了。
最后,我需要一个表,其中包含联接数据和:
在30秒内执行此操作的最佳方法是什么(在脚本发布下一个数据之前)?
解决的办法是。 可以全部通过sql命令完成。 因此非常快。 每个步骤都可以独立执行。 但是,如果您的系统有流量,则应该在事务中执行STEP 4和STEP 5。
将B中的数据插入C中,但auto_inc的primary_key = NULL
INSERT INTO C (sql_id,date_time,cian) SELECT NULL, date_time, cian FROM B;
将A的数据插入C中,但auto_inc的primary_key = NULL
INSERT INTO C (sql_id,date_time,cian) SELECT NULL, date_time, cian FROM A;
删除表A
DROP TABLE A;
将表C重命名为A
ALTER TABLE C RENAME TO A;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.