UPDATE col基于GROUP BY

时间:2012-09-16 13:52:37

标签: mysql sql group-by sql-update

我有一张桌子

id |  title  | ...
––----------------
 1 |  test A | ...
 2 |  test C | ...
 3 |  test B | ...
 4 |  test C | ...
 5 |  test B | ...
 6 |  test X | ...

我想添加一个基于GROUP BY查询的列:SELECT * FROM table GROUP BY title

id |  title  | group_id (int)
––--------------------------
 1 |  test A | 1
 2 |  test C | 2
 3 |  test B | 3
 4 |  test C | 2
 5 |  test B | 3
 6 |  test X | 4

group_id不需要很重要,只需要在行上具有相同title值且与另一个值不同的值。

我该怎么做?

感谢。

PS:对不起我的英语,我是法国人。

1 个答案:

答案 0 :(得分:1)

您是否修改了表并添加了新列ParentID? 像

这样的东西
UPDATE ATable t
  INNER JOIN (
    SELECT
      Title, 
      MIN(ID) AS ID
    FROM ATable
    GROUP BY Title
  ) m ON t.Title = m.Title
SET t.ParentID = m.ID