id product main_image
--- ---------- -----------
1 1 0
2 1 0
3 1 0
4 2 0
5 2 0
6 2 0
7 3 0
8 3 0
9 3 0
10 3 0
我想使用mysql查询来制作像这样的表字段数据(用于main_image)
id product main_image
--- ---------- -----------
1 1 1
2 1 0
3 1 0
4 2 1
5 2 0
6 2 0
7 3 1
8 3 0
9 3 0
10 3 0
我该怎么做?我想为产品设置主图像。
我有大约300万条记录,我尝试过php,但是速度太慢
最佳答案
您可以使用子查询从表中选择较小的ID:
UPDATE myTable
SET main_image = 1
WHERE id IN
(SELECT MIN(temp.id)
FROM (SELECT * FROM myTable) AS temp
GROUP BY temp.product)
关于mysql - 如何从MySQL中的相同数据更新字段,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25619830/