我有一張桌子。它有超過100排和增加。 我想行是這樣的:如何只選擇表中的每一個第n行?
1 - row (not needed 2,3,4,5,6,7. rows)
8 - row
15 - row
22 - row
29 - row
注:在MSSQL 2008 R2
我有一張桌子。它有超過100排和增加。 我想行是這樣的:如何只選擇表中的每一個第n行?
1 - row (not needed 2,3,4,5,6,7. rows)
8 - row
15 - row
22 - row
29 - row
注:在MSSQL 2008 R2
您可以使用ROW_NUMBER
和%
,F.E.用common-table-expression
:
WITH CTE AS
(
SELECT t.*, RN= ROW_NUMBER() OVER (Order By OrderColumn ASC)
FROM dbo.TableName t
)
SELECT * FROM CTE WHERE RN % 7 = 1
Yesss。非常感謝Tim。 – serdar
--IT幫助你
CREATE TABLE ##Numeric (Id INT)
DECLARE @Value INT = 1
WHILE (@Value <= 100)
BEGIN
INSERT INTO ##Numeric
SELECT @Value
SET @Value = @Value + 1
END
SELECT *
FROM ##Numeric
WHERE ID % 7 = 1
告訴你表架構請 – scaisEdge
*爲什麼*你希望得到您的行這樣? – iamdave