Mysql
 sql >> Base de données >  >> RDS >> Mysql

Mettre à jour une colonne avec un COUNT d'autres champs est SQL ?

Vous ne pouvez pas avoir de jointure dans une instruction de mise à jour. Cela devrait être

update articles
set num_comments =
(select count (*) from comments
where comments.article_id = articles.id)

Cela mettra à jour toute la table des articles, ce qui n'est peut-être pas ce que vous voulez. Si vous avez l'intention de mettre à jour un seul article, ajoutez une clause "où" après la sous-requête.