sql [sql]从每个类别中选择1个随机行

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql [sql]从每个类别中选择1个随机行相关的知识,希望对你有一定的参考价值。

WITH [TableWithRowNumber]
AS
(
	SELECT
		[IndexID], 
		[Name],
		ROW_NUMBER() OVER (PARTITION BY [IndexID] ORDER BY NEWID()) [RowNumber]
	FROM
		[SuggestedNames]
	WHERE
		[CatID] = @CatID
)

SELECT
	[IndexID], [Name]
FROM
	[TableWithRowNumber]
WHERE
	[RowNumber] = 1


--TABLE IS STRUCTURED AS FOLLOWS
--[Name] 		[IndexID]
--Alexandra	    29
--Bartram	    29
--Baldwin	    30
--Anastasia	    30
--Angelica	    31
--Basel	      	31

--OUTPUT IS AS FOLLOWS
--[Name] 		[IndexID]
--Alexandra	    29
--Anastasia	    30
--Basel	      	31

以上是关于sql [sql]从每个类别中选择1个随机行的主要内容,如果未能解决你的问题,请参考以下文章

如何使用纯 SQL 选择 N 个随机行?

MySQL 从 600K 行中快速选择 10 个随机行

选择 n 个随机行,其中 n 与每个值占总人口的百分比成比例

将一个表中的单行连接到另一个表中的 n 个随机行

VBA/宏根据多个条件复制随机行

Hibernate Criteria API:获取 n 个随机行