When SET NOCOUNT is on, no count is returned (indicating the number of rows affected by the Transact-SQL statement). When SET NOCOUNT is OFF, the count is returned.
If some of the statements contained in a stored procedure do not return much of the actual data, this setting can significantly improve performance because of the significant reduction in network traffic.
The @ @ROWCOUNT function is updated even when SET NOCOUNT is on. When SET NOCOUNT is on, the client is not sent Done_in_proc information for each statement in the stored procedure. When a query is executed using the utility provided by Microsoft®sql Server™, the nn rows are not displayed in the query results when the Transact-SQL statements (such as SELECT, INSERT, UPDATE, and DELETE) are completed affected "。
You can use off when you are counting large amounts of data without having to look at each record in detail.
This article is from: Feng Libin's blog