我的mysql表中可能有180个条目。我仍然有许多行要插入,但我最终需要添加一个名为“style”的附加列,它将有两个选项。首先,我需要为前几百个参赛作品提供一个选项 - 接下来我需要复制除了选项2之外的相同参赛作品“style”。我最终的问题是如何快速复制这些行(最好是用一个简单的查询),以及如何复制这些相同的行,但使用不同的“样式”选项。
谢谢mysql重复行并替换
1
A
回答
0
您可以使用insert-select语句。
如果只想复制行:
INSERT INTO mytable
SELECT *
FROM mytable
WHERE <some condition>
要使用不同的样式复制:
INSERT INTO mytable
SELECT col1, col2, 'someString' AS style
FROM mytable
WHERE <some condition>
0
-- set first option on all rows
UPDATE mytable
SET style = 'first option' ;
如果你不这样做单独的INSERT和单独的更新更容易;只需插入你想要的行。您可以在SELECT语句中为style
提供文字值,并插入该值。
-- replicate to a second set of rows with different option
INSERT INTO mytable (a,b,c,style)
SELECT t.a, t.b, t.c, 'different option' AS style
FROM mytable t
WHERE t.style = 'first option' ;
否则,如果你复制行,包括style
,你需要区分它们之间的行更新,而这行不进行更新。 (问题中提供的信息不足以向您提供建议。)使用auto_increment id
列,您可以获得id
列的最大值,执行insert ... select
,并再次获取最大值。这会给你刚刚插入的行的id
值的范围。
但是,只需按需要插入行,而不运行单独的UPDATE,会更容易和更高效。
相关问题
- 1. MYSQL:合并重复行
- 2. 基于字符串重复行并替换新行的值
- 3. MySQL替换行
- 4. PHP - MySQL查找行并替换
- 5. MYSQL重复删除重复行并删除重复行数据最少
- 6. SAS替换重复值
- 7. XSLT替换重复文本
- 8. java替换重复字符
- 9. HashMap重复键替换java
- 10. 重复的MySQL行
- 11. PHP mysql重复行
- 12. 在Mysql中替换两行
- 13. 用主键替换行mysql
- 14. 在MySQL查询响应替换为空重复值
- 15. 替换并进行比较
- 16. 运行选择并替换
- 17. 复杂MySQL的加入与替换列
- 18. mysql复杂更新和替换
- 19. MySQL替代重复键更新
- 20. MySQL COUNT并合并重复记录
- 21. 在订单数组中查找重复值并替换
- 22. 查找并替换java中的重复项
- 23. 比较两个数组并替换元素而不重复 - C++
- 24. 查找并替换数组中的重复项
- 25. 找到重复的列并将其替换为计数
- 26. java阵列查找重复项并替换它们
- 27. C++检查数组的重复项并替换它们
- 28. 插入重复密钥并替换为不工作
- 29. 查找并替换重复条目记事本++
- 30. 查找重复行并使用正则表达式删除替换功能
基本上我想重复几百行,然后更改这些行的特定列的值。 –
你的首要关键是autoincremental?你能否将你的表格的描述添加到问题中? – bugs2919
是的,我的主键是自动增量的。也许这将是一个很好的机会来向我描述如何包含我的表格的表示。我看到很多人这样做:**************(对不起,这是如此模糊,但我希望你明白我的观点)。 –