![](/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.