我有兩個表,A和B.MySQL的:通過ID,改變ID選擇行,並將其插入到另一張表
我想選擇基於它的B行的主鍵,改變主鍵爲不同的值,然後插入該行到A.
事情是這樣的:
INSERT INTO A SELECT id, title, date FROM B WHERE B.id="4" UPDATE B SET id="5";
是否有一個解決方案?
我有兩個表,A和B.MySQL的:通過ID,改變ID選擇行,並將其插入到另一張表
我想選擇基於它的B行的主鍵,改變主鍵爲不同的值,然後插入該行到A.
事情是這樣的:
INSERT INTO A SELECT id, title, date FROM B WHERE B.id="4" UPDATE B SET id="5";
是否有一個解決方案?
也許像
insert into a (select id as "new_id", title, date from b where b.id="4")
謝謝你的迴應,會選擇id爲「new_id」讓我改變id值到任何引號中? – Jared 2011-04-06 20:46:08
INSERT INTO A(id, title, date)
SELECT 5 AS id, title, date FROM B WHERE B.id="4";
# ^--- here is the trick
樓主在這裏:剛一說明,A和B具有相同的列。 – Jared 2011-04-06 20:41:09
你想在原始行(表B)還是新插入的表(A表)中更改此ID? – 2011-04-06 20:42:55
你有什麼問題?你想在一個查詢中完成它? – dfb 2011-04-06 20:43:33