2017-12-13 5 views
-2

テーブルの最大IDとテーブルの最小IDの間に3つのランダムIDを作成する必要があります。どのように私はSQLでそれを行うことができますか?最大値と最小値の間の乱数を作成

+0

* max ID *と* min ID *はどういう意味ですか?万一、テーブルから3つのランダムな行を取得しようとしていますか? – Leo

+3

あなたは今まで何を試みましたか? – Sunil

+0

申し訳ありませんが、私は自分自身をはっきりと説明していませんでした。 IDとして、私はテーブルの主キーを意味します。私は3人のユーザーをテーブルからランダムに選択し、ユーザーを繰り返しません。私は使用してみましたSELECT TOP 1 * FROM sch.Referee ORDER BY NEWID()しかし、私はwhileループで使用できませんでした。 –

答えて

2

MinとMaxの主キーを格納するには、2つの変数を使用する必要があります。たとえば、@a@bとしましょう。 次のクエリを使用すると、あなたの乱数を得ることができます

declare @a int,@b int 
select @b=max(id),@a=min(id) 
from mytbl 

SELECT FLOOR(RAND()*(@[email protected])+1) 
関連する問題