2014-09-19 55 views
1

因此,根據我的需要,我必須將table1中的數據複製到table2,併爲此我使用INSERT SELECT QUERY。那就是:INSERT SELECT查詢中的自定義值

$sql = "INSERT INTO `attribute_details_versions`(`attribute_details_id`,`attribute_name`,`attribute_text`,`attribute_value`,`created_at`,`updated_at`) SELECT `attribute_details_id`,`attribute_name`,`attribute_text`,`attribute_value`,`created_at`,`updated_at`FROM `attribute_details`"; 

在上面的查詢從attribute_details中的數據複製到attribute_details_versions表,這是工作的罰款。

但有1多個列versionattribute_details_versions,我需要提交像在此列中的任何整數值(1或2或等)的自定義值。 version column is not exist in attribute_details`表所以我如何插入這個自定義值使用SELECT插入查詢?

任何幫助,將不勝感激。

+0

它是所有行相同的值? – VMai 2014-09-19 10:11:50

+0

@VMai是的,它對於所有行都是一樣的。 – 2014-09-19 10:12:41

回答

5

如果需要爲所有值一樣,你可以簡單地選擇它需要數:

$sql = "INSERT INTO `attribute_details_versions`(`attribute_details_id`,`attribute_name`,`attribute_text`,`attribute_value`,`created_at`,`updated_at`, `version `) SELECT `attribute_details_id`,`attribute_name`,`attribute_text`,`attribute_value`,`created_at`,`updated_at`, 2 FROM `attribute_details`"; 
+0

太棒了!我做了同樣的事情,除了2作爲「2」,應該只有「2」。現在它可以工作。 – 2014-09-19 10:15:21