2012-06-12 4 views
5

In SQL Server2005 wird die Funktion Row_number() verwendet, um die fortlaufende Nummer einer Zeile in einer Partition einer Ergebnismenge ab bei 1 für die erste Zeile in jeder Partition abzurufen. Das ist sehr nützlich, wenn Paging durch eine große Anzahl von Datensätzen in Tabelle implementieren. Gibt es in SQLite eine ähnliche Funktion wie ?ROWNumber in SQLite

Antwort

0

Nein. Normalerweise würden Sie diese Art von Details mit Ihrem eigenen Code behandeln.

0

Sie können die Raw-Nummerierung in einer ROW_NUMBER() - Funktion mit Code ähnlich dem folgenden Format simulieren.

CREATE TABLE Temp.Output AS 
SELECT * 
FROM (
    SELECT 10 AS ID,'Darren' AS Name 
    UNION ALL 
    SELECT 20,'Roger' 
    UNION ALL 
    SELECT 30,'Emil' 
    UNION ALL 
    SELECT 40,'Doug' 
    UNION ALL 
    SELECT 50,'Martin' 
) 
ORDER BY Name ASC 
; 
SELECT ROWID AS ROWNUMBER, ID, Name 
FROM Temp.Output 
; 
DROP TABLE Temp.Output 
; 

Es wird unterstützt „PARTITION BY“ nicht für die Ergebnisse Gruppierung (aber mit einigen zusätzlichen SQL können Sie in der Lage sein zu).