表A:
A|B|C|Version
1|2|3|1
1|2|3|2
我想要表B
A|B|C|Version
1|2|3|2
每行与A相同,但版本增加1。 让我们说我只想复制表A中版本= 1的行。 我该怎么做?
答案 0 :(得分:0)
insert into用于“复制”+ Where clause,仅用于复制一个版本。
INSERT INTO tableB ( A, B, C, Version) VALUES
(SELECT * FROM tableA WHERE tableA.Version = 1);
答案 1 :(得分:0)
INSERT INTO b( a, b, c, version )
SELECT a, b, c, version + 1
FROM a
WHERE version = 1
会奏效。当然,由于您的WHERE
条款仅限于version = 1
的行,您可以在SELECT
INSERT INTO b( a, b, c, version )
SELECT a, b, c, 2
FROM a
WHERE version = 1