1

クエリがあり、呼び出しているプロシージャの結果ではなく、行数を表示したいだけです。

たとえば、次のようになります。

exec GetSomething
    @UserID = 112233,
    @MaxAge = 50,
    ... etc.

SET @Count = @@rowcount
SELECT @Count

カウントだけでなく、カウントが選択される前の最初のレコードセットの結果レコードのリストも返します。

レコードセットの結果を表示せずに、このカウントを行うにはどうすればよいですか?

4

2 に答える 2

1
DECLARE @Something TABLE (
   ...
)

INSERT INTO @Something
EXECUTE GetSomething
   @UserID = 112233,
   @MaxAge = 50,
   ... etc.;

SET @Count = @@rowcount
SELECT @Count
于 2012-05-10T03:42:45.963 に答える
0

OPENROWSET を試してみることもできますが、有効になっていることを確認する必要があります。

SELECT count(*) FROM OPENROWSET('SQLNCLI', 'Server=(local)\SQL2008;Trusted_Connection=yes;',
     'EXEC GetSomething')

OPENROWSET を有効にするには:

sp_configure 'Show Advanced Options', 1
GO
RECONFIGURE
GO
sp_configure 'Ad Hoc Distributed Queries', 1
GO
RECONFIGURE
GO

OPENROWSET の MSDN を参照してください: http://msdn.microsoft.com/en-us/library/ms190312.aspx

于 2012-05-10T03:07:12.933 に答える