Mysql 使用同一表中的计数进行更新
我有一个表1,它的列父项id是来自同一表中其他记录的列id的值。 我想设置另一个列,列中的记录数以该表的id作为其父级id。 我试过这个:Mysql 使用同一表中的计数进行更新,mysql,Mysql,我有一个表1,它的列父项id是来自同一表中其他记录的列id的值。 我想设置另一个列,列中的记录数以该表的id作为其父级id。 我试过这个: UPDATE table_1 p1 SET p1.out_degree = ( SELECT COUNT(*) FROM table_1 p2, table_1 p1 WHERE p
UPDATE table_1 p1
SET p1.out_degree = ( SELECT COUNT(*)
FROM table_1 p2,
table_1 p1
WHERE p2.parent_id = p1.id
GROUP_BY p1.id
)
但它不起作用。有什么想法吗?试试这个:
UPDATE table_1 T1
JOIN ( SELECT parent_id,Count(parent_id) as ParentCount
FROM table_1
GROUP BY parent_id
) T2 ON T1.parent_id=T2.parent_id
SET T1.out_degree=T2.parentCount
请参见中的示例结果。感谢您为我们提供答案。我不知道可以在
更新中使用加入。
:-)工作完美!谢谢