Sql 向记录中添加权重/分数

Sql 向记录中添加权重/分数,sql,Sql,我有一张有邮寄地址的客户表。我试图根据每个客户是否与其他客户共享该地址,为他们添加一个“权重”,如下所示: UPDATE CT SET Household_Weight = Cnt FROM CT INNER JOIN ( SELECT Mail_Address, COUNT(*) AS Cnt FROM CT GROUP B

我有一张有邮寄地址的客户表。我试图根据每个客户是否与其他客户共享该地址,为他们添加一个“权重”,如下所示:

UPDATE
   CT 
SET
   Household_Weight = Cnt 
FROM
   CT 
   INNER JOIN
      (
         SELECT
            Mail_Address,
            COUNT(*) AS Cnt 
         FROM
            CT 
         GROUP BY
            Mail_Address
      )

有什么建议吗?

使用子查询怎么样

update ct
    set Household_Weight = (SELECT COUNT(*) AS Cnt FROM CT CT2 WHERE ct2.Mail_Address = ct.Mail_Address);

并非所有数据库都支持
中的
更新中的

分组依据-您总是有一个级别中断键和总数。您不能将1列设置为2,将您的问题标记到您使用的数据库中。问题的措辞不清楚。谁知道ct上是否存在邮件地址!;-)