Mysql 从两个表中选择并更新第三个表
我有三张桌子:Mysql 从两个表中选择并更新第三个表,mysql,Mysql,我有三张桌子: tags: ( id, name, sefriendly ) articles_tags: ( id, tag_id, article_id ) articles: ( id, tags, ....) 我使用下面的sql获取特定文章id(这里是10)的标记,通过返回用逗号分隔的所有标记名,可以很好地工作 SELECT GROUP_CONCAT( name ) AS art_tags FROM tags, articles_tags WHERE article_id =10 AN
tags: ( id, name, sefriendly )
articles_tags: ( id, tag_id, article_id )
articles: ( id, tags, ....)
我使用下面的sql获取特定文章id(这里是10)的标记,通过返回用逗号分隔的所有标记名,可以很好地工作
SELECT GROUP_CONCAT( name ) AS art_tags
FROM tags, articles_tags
WHERE article_id =10
AND tags.id = tag_id
AND tags_group_id =0
GROUP BY article_id
我想获取表articles中所有ID的所有标记,并将主题存储在articles.tags中
谢谢用连接条件检查下面的查询
UPDATE articles
JOIN
(
SELECT
article_id,
GROUP_CONCAT( name ) AS art_tags
FROM tags, articles_tags
WHERE tags.id = tag_id
AND tags_group_id =0
GROUP BY article_id) tin
ON articles.id = tin.article_id
SET tags = tin.art_tags;
你为什么想要这样一个非规范化?正如预期的那样。谢谢。