【发布时间】:2015-07-07 16:35:53
【问题描述】:
我有一个表 review_store 有两列:review_id 和 store_id
如果我必须用 2 替换 1,我会这样做:
UPDATE review_store
SET store_id = '2'
WHERE store_id = '1'
如何将 store_ID = 1 的每一行复制/复制到 Store_ID = 2 ?
【问题讨论】:
我有一个表 review_store 有两列:review_id 和 store_id
如果我必须用 2 替换 1,我会这样做:
UPDATE review_store
SET store_id = '2'
WHERE store_id = '1'
如何将 store_ID = 1 的每一行复制/复制到 Store_ID = 2 ?
【问题讨论】:
我假设您的意思是在同一个表中创建新记录。使用INSERT SELECT
INSERT INTO review_store
SELECT review_id, '2' as Store_id
FROM review_store
WHERE Store_id = '1'
【讨论】:
INSERT INTO review_store (review_id, store_id)
SELECT review_id, 2
FROM review_store
WHERE store_id = 1
【讨论】:
INSERT INTO `review_store` SELECT 2, review_id FROM `review_store` WHERE store_id = 1
注意,如果你有一个 id 列,你应该为其添加一个空白字段,所以
INSERT INTO `review_store` SELECT '', 2, review_id FROM `review_store` WHERE store_id = 1
还要检查字段的顺序。如果 review_id 出现在 store_id 之前,则需要重新排序选择。
【讨论】: