表A有字段ArticleID,ArticlePlCount,其中ArticleID是主键
表B有字段ID,ArticleID,Conntext
现在想从表B中统计每个ArticleID的记录数来更新表A的ArticlePlCount的字段。表A的ArticleID和表B的ArticleID是关联的。

解决方案 »

  1.   

    update t
    set t.ArticlePlCount=a.cnt
    from 表A t inner join (select ArticleID,cnt=count(ArticleID) from 表B group by ArticleID) a on t.ArticleID=a.ArticleID
      

  2.   


    update A set ArticlePlCount=sum
    from A inner join 
    (select ArticleID,count(*) sum
    from b
    group by ArticleID ) as T
    on  A.ArticleID=T.ArticleID
      

  3.   


    update a set ArticlePlCount=b.ArticlePlCount from a inner join (select ArticleID,ArticlePlCount=count(1) from b group by ArticleID) b on a.ArticleID=b.ArticleID
      

  4.   

    update A SET ArticlePlCount= SL
     FROM A ,(SELECT ArticleID,COUNT(*) AS SL FROM b GROUP BY ArticleID)
    WHERE A.ArticleID=B.ArticleID
      

  5.   

    UPDATE A SET ArticlePlCount = aa.ArticleCount 
    FROM  A, 
    (SELECT  ArticleID, COUNT(*) AS ArticleCount FROM B GROUP BY ArticleID)aa 
    WHERE aa.ArticleID = A.ArticleID[/code]
      

  6.   

    update  A set ArticlePlCount=(select count(*) from B where A.ArticleID=B.ArticleID)
    from A