選擇我有一個OLD_TABLE和NEW_TABLE:MySQL的 - INSERT INTO XXX與AUTO_INCREMENT列
CREATE TABLE `old_table` ( `id` bigint(20) NOT NULL AUTO_INCREMENT, `col1` varchar(15) DEFAULT NULL, `col2` int(15) DEFAULT NULL, ..., PREMARY_KEY (`id`) ); CREATE TABLE `new_table` LIKE `old_table`;
然後兩個表與一些值填充。在那之後,我想選擇一些OLD_TABLE行和插入NEW_TABLE:
INSERT INTO `old_table` SELECT * FROM `new_table` WHERE col2 > 100;
但是,這會導致因爲重複鍵錯誤。我懶得指定SELECT子句中的列,因爲在真正的系統中,這些表有很多列。
解決問題的最佳方法是什麼?
嘗試這樣 http://stackoverflow.com/questions/9122/select-all-columns-except-one-in-mysql – 2012-07-19 16:39:22
@AndreyVorobyev execlude id字段:這是一個很好的解決方案。你爲什麼不把它作爲答案發布? – 2012-07-19 16:52:11