2
我的數據庫有5表格類別的分類。 我也有一個名爲「項目」的表,其中每個項目都有唯一的ID和類別ID FK。TSQL隨機選擇選擇標準
我需要從1個類別中隨機選擇10個項目。
如果只有1個類別,這不會有問題。但表格「項目」以非連續順序存儲類別ID。
下面的隨機選擇語句工作,並能夠在一個範圍內生成隨機ID。但是,我怎樣才能生成10個屬於同一類別的隨機ID?
Declare @maxRandomValue tinyint = 100
, @minRandomValue tinyint = 0;
Select Cast(((@maxRandomValue + 1) - @minRandomValue)
* Rand() + @minRandomValue As tinyint) As 'randomNumber';
Defintions:
Table Categories
ID INT
Desc Varchar(100)
Table Items
ID Int
CategoryID Int (fk)
Desc Varchar(100)
是的,它是一個TSQL語句 –
看看[隨機抽樣這個MSDN文章(http://msdn.microsoft.com/en-us/library/ aa175776%28v = sql.80%29.aspx) –
'SELECT TOP 10 * FROM dbo.MyTable ORDER BY NEWID();'總是適合我。 – tugberk