Heim > Datenbank > MySQL-Tutorial > Wie simuliere ich die ROW_NUMBER()-Funktionalität in Microsoft Access?

Wie simuliere ich die ROW_NUMBER()-Funktionalität in Microsoft Access?

Patricia Arquette
Freigeben: 2025-01-02 13:12:38
Original
205 Leute haben es durchsucht

How to Simulate ROW_NUMBER() Functionality in Microsoft Access?

Erzielung der Zeilennummernfunktionalität in MS Access

Die Funktion „ROW_NUMBER OVER (PARTITION BY)“, die in SQL häufig zum Zuweisen fortlaufender Nummern verwendet wird innerhalb von Partitionen eines Ergebnissatzes können in Microsoft Access mithilfe von Selbstverknüpfungen und emuliert werden Aggregation.

Betrachten Sie den folgenden Datensatz:

DOC_TYPE    Ino
3a  1800xxc1
3b  1810xxc2
3c  1700xxc3
3a  1700xxc4
3a  1800xxc5
3a  1800xxc6
3b  1800xxc7
Nach dem Login kopieren

Um das „ROW_NUMBER“-Verhalten zu reproduzieren, können wir eine Abfrage wie diese verwenden:

SELECT 
    t1.DOC_TYPE,
    t1.Ino,
    COUNT(*) AS RowNum
FROM 
    YourTable AS t1
    INNER JOIN
    YourTable AS t2
        ON t2.DOC_TYPE = t1.DOC_TYPE
            AND t2.Ino <= t1.Ino
GROUP BY
    t1.DOC_TYPE,
    t1.Ino
ORDER BY 1, 3
Nach dem Login kopieren

Diese Abfrage Verknüpft die Tabelle selbst in der Spalte DOC_TYPE und führt einen Kleiner-gleich-Vergleich der Ino-Werte durch. Anschließend werden die Zeilen nach DOC_TYPE und Ino aggregiert und das Vorkommen jedes eindeutigen DOC_TYPE-Ino-Paars gezählt. Die resultierende Anzahl, die dem RowNum-Alias ​​zugewiesen ist, stellt die fortlaufende Zeilennummer dar.

Das Anwenden dieser Abfrage auf die Beispieldaten führt zu folgendem Ergebnis:

DOC_TYPE    Ino RowNum
3a   1800xxc1    1
3a   1700xxc4    2
3a   1800xxc5    3
3a   1800xxc6    4
3b   1810xxc2    1
3b   1800xxc7    2
3c   1700xxc3    1
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie simuliere ich die ROW_NUMBER()-Funktionalität in Microsoft Access?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage