id name count
------------
1 abc
2 xyz
3 xyz
4 xyz
以下查询“按名称从临时组中选择计数(名称);”给了我:
count(name)
--------
1
3
我希望将此结果更新为“count”列。确切地说,我希望我的桌子看起来像:
id name count
------------
1 abc 1
2 xyz 3
3 xyz 3
4 xyz 3
答案 0 :(得分:1)
您可以使用COUNT / GROUP BY获取这些值。您可以执行UPDATE语句,将表与子查询连接起来: -
UPDATE temp a
INNER JOIN
(
SELECT name, COUNT(*) AS name_count
FROM temp
GROUP BY name
) b
ON a.name = b.name
SET a.name_count = b.name_count;