Вы можете изменить возврат на SELECT. Таким образом, вы получите правильный набор записей.
CREATE PROCEDURE PurgeFoo
AS
DELETE FROM Foo
SELECT @@ROWCOUNT AS RowsDeleted
GO
Или параметр OUTPUT, например:
CREATE PROCEDURE PurgeFoo
@RowsDeleted int = 0 OUTPUT
AS
DELETE FROM Foo
SET @RowsDeleted = @@ROWCOUNT
GO
Значение RETURN наиболее полезно для кодов состояния и ошибок, а не для значимых данных.