Tsql 更新是个问题

Tsql 更新是个问题,tsql,Tsql,我们的数据库再次运行了此更新。它说它更新了5587条记录,这是正确的记录数量,但实际上它更新了更多的人。为什么会这样。提前谢谢 UPDATE LIVE.SORDERP SET SOQSTA_0 ='1' WHERE SORDERP.SOHNUM_0 in ( SELECT DISTINCT h.SOHNUM_0 FROM Set_to_Close h ) 更新LIVE.SORDERP SET SOQSTA_0='1',其中SO

我们的数据库再次运行了此更新。它说它更新了5587条记录,这是正确的记录数量,但实际上它更新了更多的人。为什么会这样。提前谢谢

 UPDATE LIVE.SORDERP
 SET SOQSTA_0  ='1'

 WHERE SORDERP.SOHNUM_0 in (
 SELECT DISTINCT
            h.SOHNUM_0
        FROM Set_to_Close h
        )

更新LIVE.SORDERP SET SOQSTA_0='1',其中SORDERP.SOHNUM_0在从SET_选择DISTINCT h.SOHNUM_0到_closeh中可能是SOHNUM_0的值不明确吗?也许您期望的记录数就是不同值的数目?从LIVE.SORDERP中选择count*可以得到什么?从Set_到_Close h;中选择不同h.SOHNUM_0中的SORDERP.SOHNUM_0可以得到什么;?不管答案是什么,都是更新的记录数。实际上。根据什么?这是如何检查的?select语句返回了5887条记录,这也是更新日期所说的,但更新的记录不止这些。