Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Mensimulasikan ROW_NUMBER() OVER (PARTITION BY) dalam MS Access?

Bagaimana untuk Mensimulasikan ROW_NUMBER() OVER (PARTITION BY) dalam MS Access?

Patricia Arquette
Lepaskan: 2024-12-31 08:41:09
asal
1000 orang telah melayarinya

How to Simulate ROW_NUMBER() OVER (PARTITION BY) in MS Access?

Mencapai ROW_NUMBER / PARTITION BY dalam MS Access

Dalam MS Access, anda boleh meniru fungsi fungsi ROW_NUMBER OVER (PARTITION BY) menggunakan gabungan dan pengagregatan diri yang tidak sama rata.

Pertimbangkan data contoh:

Ino TYPE DOC
1 1800xxc1 3a
2 1810xxc2 3b
3 1700xxc3 3c
4 1700xxc4 3a
5 1800xxc5 3a
6 1800xxc6 3a
7 1800xxc7 3b

Untuk mencapai hasil yang serupa dengan ROW_NUMBER OVER (PARTITION BY DOC), laksanakan pertanyaan berikut:

SELECT
    t1.DOC,
    t1.TYPE,
    COUNT(*) AS [Ino Seq]
FROM
    MyData AS t1
    INNER JOIN
    MyData AS t2
        ON t2.DOC = t1.DOC
            AND t2.Ino <= t1.Ino
GROUP BY
    t1.DOC,
    t1.TYPE
ORDER BY
    1, 3
Salin selepas log masuk

Pertanyaan ini akan mengembalikan lajur Ino Seq, yang memberikan integer berjujukan kepada setiap baris dalam partition (DOC dalam kes ini).

Dalam khusus ini kes, keputusannya ialah:

DOC TYPE Ino Seq
3a 1800xxc1 1
3a 1700xxc4 2
3a 1800xxc5 3
3a 1800xxc6 4
3b 1810xxc2 1
3b 1800xxc7 2
3c 1700xxc3 1

Atas ialah kandungan terperinci Bagaimana untuk Mensimulasikan ROW_NUMBER() OVER (PARTITION BY) dalam MS Access?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan