2

これは、次のような質問です。

T-SQL: MIN の使用方法

しかし、グループごとに最低 4 つの値を返すようにします。

ありがとうございました

4

2 に答える 2

3

でCTEを使用しROW_NUMBERます。

WITH CTE AS(
   SELECT T.*, RN=ROW_NUMBER()OVER(PARTITION BY Col1 Order By Col2 ASC)
   FROM dbo.TableName T
)
SELECT * FROM CTE WHERE RN <= 4

ランキング機能

于 2013-09-06T22:53:06.563 に答える
2
SELECT 
  ID, SomeVal
FROM (
   SELECT ID, SomeVal, row_number() over(PARTITION BY id ORDER BY SomeVal ASC) rn
   FROM [TableName]
) T
WHERE rn <= 4

これにより、SomeValごとに最初の 4 つの最小値が得られますID

于 2013-09-06T22:53:12.343 に答える