我有一个新闻表,其中每条记录都有字段:
news_id (INT), parent_id (INT) , subitems (INT)
我希望每条记录都带有它的直接子项的总数(计数)
例如(我希望结果是这样的)
news_id: 1, parent_id: 0, subitems: 2
news_id: 2, parent_id: 1 , subitems: 0
news_id: 3, parent_id: 1 , subitems: 0
我该如何正确地做这样的事情:
UPDATE news n
SET subitems = (SELECT COUNT(*) FROM `news` AS `n2`
WHERE `n2`.`parent_id` = `n`.`news_id`)
由于上面给出了以下错误:
#1093 - You can't specify target table 'n' for update in FROM clause