我有一张像
这样的表BatchID Volume1 Volume2 Volume3
1 3.0 4.0 5.0
1 2.0 1.0 2.0
2 1.0 2.0 4.0
2 1.0 1.0 1.0
2 1.0 1.0 1.0
我正在尝试添加另一个具有相同volume1,volume2和volume3值的batchid 3 它看起来像(来自batchID 2的相同记录)
1 3.0 4.0 5.0
1 2.0 1.0 2.0
2 1.0 2.0 4.0
2 1.0 1.0 1.0
2 1.0 1.0 1.0
3 1.0 2.0 4.0
3 1.0 1.0 1.0
3 1.0 1.0 1.0
我写了以下查询
insert into table1 (BatchID,Volume1,Volume2,Volume3) Values
(`3`,Select Volume1,Volume2,Volume3 from table1 where batchid = '2')
给出错误。
P.S我知道上面的数据库设计不是很好。这是我实际设计的简化版本。
答案 0 :(得分:3)
您可以使用INSERT ... SELECT
:
INSERT INTO table1 (BatchID, Volume1, Volume2, Volume3)
SELECT 3, Volume1, Volume2, Volume3 FROM table1 WHERE batchid = 2
答案 1 :(得分:1)
免责声明:我没有对此进行测试,因此请自行承担风险!
这会有用吗?
INSERT INTO table1 (BatchID, Volume1, Volume2, Volume3)
SELECT 3, Volume1, Volume2, Volume3
FROM table1
WHERE BatchID = 2;