私は以下のSPを持っています。特定のレコード数を得るために私のSPにcountのパラメータを渡します。クエリで `@ Count`変数を使用するにはどうすればよいですか?
しかし、クエリで@Count
変数を使用するにはどうすればよいですか?
CREATE PROCEDURE [dbo].[GetRandomWords1]
@Count int
AS
BEGIN
SELECT * From Words
END
私は以下のSPを持っています。特定のレコード数を得るために私のSPにcountのパラメータを渡します。クエリで `@ Count`変数を使用するにはどうすればよいですか?
しかし、クエリで@Count
変数を使用するにはどうすればよいですか?
CREATE PROCEDURE [dbo].[GetRandomWords1]
@Count int
AS
BEGIN
SELECT * From Words
END
SQL Serverの2005+と仮定すると、TOP使用:
CREATE PROCEDURE [dbo].[GetRandomWords1]
@Count int
AS
BEGIN
SELECT TOP (@Count) *
FROM Words
END
TOPは、SQL Server 2000でサポートされていますが、括弧を使用することではありません - あなたのためのSQL Server 2000上での動的SQLを使用する必要があります同等の機能性。
これを試してみてください:
SELECT TOP(@Count) * From Words ORDER BY NEWID()
を、あなたが戻ってあなたWords
テーブルからランダムに単語をしたいと思われるあなたのSPの名前から判断します。
その働き。 :) –
はい、まさに、私はランダムな言葉が欲しいです。まもなくそれに関連した別の質問が掲載されます。 :) –
うわー、クール。ありがとう。そのとてもシンプルな男。 :) –
ありがとう、私はSQL Server 2005を使用しています。 –
SQL2000では、動的SQLを使用する必要はありません。次のようにすることができます: "Set RowCount @Count"。 "Set RowCount 0"で作業が完了したら、行数を設定解除してください。これは、TOP節がSQL2005以上で推奨される方法であるため、SQL2000でのみ使用してください。ありがとうございます。 –