我有下表,其中有2列。我需要編寫一個查詢,它將返回3列,前2列應匹配表中的2列和第3列列應該分成n個分組。 例如在這種情況下,我想分成4組,因此第4行應該在列3中返回1,第2行應該返回2,第3行應該返回3,最後是最後3行(因爲總共有15行行)應該返回4.在sql server中對錶中的行進行分組
DECLARE @NAMES TABLE ([ID] INT IDENTITY, [NAME] VARCHAR(20))
INSERT INTO @NAMES SELECT 'NAME1'
UNION ALL
SELECT 'NAME2'
UNION ALL
SELECT 'NAME3'
UNION ALL
SELECT 'NAME4'
UNION ALL
SELECT 'NAME5'
UNION ALL
SELECT 'NAME6'
UNION ALL
SELECT 'NAME7'
UNION ALL
SELECT 'NAME8'
UNION ALL
SELECT 'NAME9'
UNION ALL
SELECT 'NAME10'
UNION ALL
SELECT 'NAME11'
UNION ALL
SELECT 'NAME12'
UNION ALL
SELECT 'NAME13'
UNION ALL
SELECT 'NAME14'
UNION ALL
SELECT 'NAME15'
+1 - 但請注意,您要重新排序此數據。 'Name1'和'Name10'現在將彼此相鄰。 – MatBailie
是的,謝謝你,如果你不想這樣做,你可以通過ID命令 –