sql >> Databasteknik >  >> RDS >> Sqlserver

Hoppa över första raden i SQL Server 2005?

Du kan använda OVER klausul och en rangordningsfunktion. Du kan inte filtrera på detta direkt så du behöver till oss en underfråga eller ett vanligt tabelluttryck, exemplet nedan använder det senare.

DECLARE @MyTable TABLE 
(
    ID INT,
    Name VARCHAR(15)
);
INSERT INTO @MyTable VALUES (1, 'Alice');
INSERT INTO @MyTable VALUES (2, 'Bob');
INSERT INTO @MyTable VALUES (3, 'Chris');
INSERT INTO @MyTable VALUES (4, 'David');
INSERT INTO @MyTable VALUES (5, 'Edgar');

WITH people AS 
(
    SELECT ID, Name, ROW_NUMBER() OVER (ORDER BY ID) RN
    FROM @MyTable
)
SELECT ID, Name
FROM people
WHERE RN > 1;

Det kommer att finnas bättre stöd för sidnumrering i nästa version av SQL Server (kodnamn Denali) med OFFSET och FETCH sökord.



  1. Inkludera kolumnnamn i SQLite-frågeresultat

  2. Hur kör man samma fråga på alla databaser på en instans?

  3. Hur man skapar en databas i MySQL Workbench med hjälp av GUI

  4. Enklaste sättet att göra en rekursiv självanslutning?