sql >> Databáze >  >> RDS >> Sqlserver

Přeskočit první řádek v SQL Server 2005?

Můžete použít OVER klauzule a hodnotící funkce. Nemůžete to filtrovat přímo, takže nám potřebujete dílčí dotaz nebo běžný tabulkový výraz, příklad níže používá druhý.

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;

V příští verzi SQL Server (kódové označení Denali) s OFFSET bude lepší podpora stránkování a FETCH klíčová slova.



  1. Co je to operace LOP_INSERT_ROWS a LOP_DELETE_ROWS na objektu View?

  2. SQLite - Zálohování databáze do souboru

  3. Jak zobrazit základní kurzor aktivního dotazu

  4. Jak zavolat pořadové číslo databáze Oracle pomocí MyBatis?