Я бы ожидал, что эти подсчеты совпадут, но они отключены несколькими записями. Что может быть причиной этого?Почему эти значения sql не совпадают
DECLARE @ExpectedCount INT = 0;
DECLARE @UpdatedCount INT = 0;
SELECT @ExpectedCount = COUNT(*)
FROM [dbo].[Table1] t
JOIN [dbo].[Table2] s ON s.IdColumn = t.IdColumn
UPDATE t
SET t.StadiumId = s.StadiumId
FROM [dbo].[Table1] t
JOIN [dbo].[Table2] s ON s.IdColumn = t.IdColumn
SELECT @UpdatedCount = @@ROWCOUNT
PRINT @ExpectedCount
PRINT @UpdatedCount
Возможно, '@ updatedCount' сообщает только те строки, которые были фактически изменены? Я имею в виду, если 'StadiumId' был' 3' до и '3' после, он не считается« обновленным ». –