Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Menggunakan ROW_NUMBER() dalam Klausa WHERE?

Bagaimana untuk Menggunakan ROW_NUMBER() dalam Klausa WHERE?

Barbara Streisand
Lepaskan: 2024-12-18 14:19:11
asal
153 orang telah melayarinya

How to Use ROW_NUMBER() in a WHERE Clause?

Menyoal Menggunakan Fungsi ROW_NUMBER() dalam Klausa WHERE

Dalam percubaan untuk menggunakan fungsi ROW_NUMBER() dalam klausa WHERE, pertanyaan mengalami ralat "Fungsi bertingkap hanya boleh muncul dalam klausa SELECT atau ORDER BY." Pertanyaan yang dimaksudkan ialah:

SELECT employee_id
FROM v_employee
WHERE ROW_NUMBER() OVER (ORDER BY employee_id) > 0
ORDER BY employee_id
Salin selepas log masuk

Untuk menyelesaikan ralat ini, gunakan penyelesaian dengan membungkus pernyataan pilih dalam Ungkapan Jadual Biasa (CTE). Ini membenarkan pertanyaan terhadap CTE dan menggunakan hasil fungsi bertingkap dalam klausa WHERE.

WITH MyCte AS 
(
    select   employee_id,
             RowNum = row_number() OVER ( order by employee_id )
    from     V_EMPLOYEE 
    ORDER BY Employee_ID
)
SELECT  employee_id
FROM    MyCte
WHERE   RowNum > 0
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimana untuk Menggunakan ROW_NUMBER() dalam Klausa WHERE?. 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