我有兩個表,需要頂級副本彼此INSERT INTO tbl_new SELECT FROM tbl_old
插入從另一個妹妹表一個額外字段
他們倆有3個完全相同的列,但tbl_new有一個名爲「類型」我怎麼能填充它第4列在相同的查詢中。
我需要從tbl_old複製行和值分配給細胞 「類型」
INSERT INTO tbl_new SELECT FROM tbl_old, (type) values (floor(rand() * 10))
不起作用
我有兩個表,需要頂級副本彼此INSERT INTO tbl_new SELECT FROM tbl_old
插入從另一個妹妹表一個額外字段
他們倆有3個完全相同的列,但tbl_new有一個名爲「類型」我怎麼能填充它第4列在相同的查詢中。
我需要從tbl_old複製行和值分配給細胞 「類型」
INSERT INTO tbl_new SELECT FROM tbl_old, (type) values (floor(rand() * 10))
不起作用
說tbl_old
有兩列tbl_new
有三個
tbl_old
colA | colB
tbl_new
colA | colB | colC
假設你想用colA和colB值的總和填充colC。您可以使用此:
INSERT INTO tbl_new (colA, colB, colC) SELECT colA,colB,(colA+colB) FROM tbl_old;
在您的例子:
INSERT INTO tbl_new (colA, colB, colC) SELECT colA,colB,floor(rand()*10) FROM tbl_old;
如下嘗試:
INSERT INTO tbl_new (column1,column2,column3,type)
SELECT column1,column2,column3,floor(rand() * 10) FROM tbl_old
注:與你的列名替換COLUMN1,column1.column3。
上面的這些答案是正確的,但想象如果除了額外列以外所有內容都相同,則需要花費時間寫出列。
下面是一個更整潔查詢,如果該表是相同的,以便在端部附加列:
INSERT INTO tbl_new SELECT *, floor(rand()*10) FROM tbl_old;