我有一个包含 3 列的表 PRODUCTS
id merchant selected (empty column)
1 Roger
2 Anthony
3 Maria
4 Joseph
5 Serge
我想做这样的查询(语法错误,只是一个解释我尝试做的事情的想法)
SELECT * WHERE merchant LIKE '%thon%' FROM products.merchant
INSERT INTO products.selected
但是放在同一个ID行,所以结果应该是这样的
id merchant selected
1 Roger
2 Anthony Anthony
3 Maria
4 Joseph
5 Serge
非常有义务提示如何制作这样的把戏!
最佳答案
@Kickstart 和@daghan 的查询是正确的:
UPDATE products
SET selected = merchant
WHERE merchant LIKE '%thon%'
但是我对你的表格结构有一个建议,如果你想对所选行进行操作,你可以将选择列的类型更改为TINYINT或BOOLEAN 然后你的表将是这样的:
id merchant selected
1 Roger
2 Anthony 1
3 Maria
4 Joseph
5 Serge
这将帮助您编写更简单的查询,最终查询将是这样的:
UPDATE products
SET selected = 1
WHERE merchant LIKE '%thon%'
关于MySQL如何从一个列中获取数据并放入同一ID和同一表下的另一列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17969407/