Paging yang cekap dan jumlah pemerolehan SQL Server
Dalam SQL Server, perolehan halaman membolehkan anda mengambil data dalam kelompok dan bukannya mengambil semua data sekaligus. Ini boleh meningkatkan prestasi dengan ketara, terutamanya apabila bekerja dengan set data yang besar.
Amalan Terbaik untuk SQL Server 2012 dan Kemudian
Versi SQL Server 2012 memperkenalkan kaedah paging yang lebih mudah. Klausa OFFSET
dan FETCH
menyediakan cara yang mudah untuk mendapatkan semula bilangan hasil yang diperlukan sambil mendapatkan jumlah nombor.
Sebagai contoh, untuk mendapatkan 10 baris data seterusnya dan mendapatkan jumlah pada masa yang sama:
<code class="language-sql">-- 获取带有行号的接下来的10行 SELECT *, ROW_NUMBER() OVER (ORDER BY id) AS RowNum FROM TableName; -- 统计总行数 SELECT COUNT(*) AS TotalCount FROM TableName;</code>
Paging menggunakan OFFSET dan FETCH
Bermula dengan SQL Server 2012, anda boleh menentukan secara eksplisit baris untuk mendapatkan semula menggunakan fasal OFFSET
dan FETCH
:
<code class="language-sql">SELECT * FROM TableName ORDER BY id OFFSET 10 ROWS FETCH NEXT 10 ROWS ONLY;</code>
Nota Penting tentang OFFSET dan FETCH
OFFSET
dan FETCH
, klausa ORDER BY
diperlukan. OFFSET
dan FETCH
mesti digunakan bersama; OFFSET
tidak boleh digunakan secara bersendirian. OFFSET
dan FETCH
tidak boleh digabungkan dengan TOP
dalam pertanyaan yang sama. Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menghitamkan Hasil SQL Server dengan Cekap dan Mendapatkan Jumlah Kiraan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!