sql server UPDATE与INNER JOIN结合使用

CS *_*Pei 6 sql-server sql-update

UPDATE在SQL SERVER中发现了以下语句的问题

UPDATE
    table_a
SET
    table_a.More = -1
FROM
    table_a
INNER JOIN
    ( SELECT column1, COUNT(*)  AS More 
      FROM table_a 
      GROUP BY column1 ) AS table_b
ON
    table_a.column1 = table_b.column1
Run Code Online (Sandbox Code Playgroud)

请注意,INNER JOIN部分使用表本身.在此之后,UPDATE我期待一些行More等于-1.但我只有1.我百分百肯定column1有重复.我错过了什么?

我发现的问题是有些人将列定义Morebit类型!

Jua*_*uan 1

我这里的问题是数据类型,在位类型中你只能有 1 或 0 或 NULL。将数据类型更改为int