2015-08-24 20 views
0
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 

回答

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; 
+0

http://sqlfiddle.com/#!9/4a34f/1 – Alex

相關問題