Tidak seperti pangkalan data SQL yang lain, SQL Server tidak mempunyai klausa OFFSET yang jelas. Ini boleh mencipta cabaran apabila anda perlu mendapatkan hasil daripada offset tertentu tanpa mendapatkan semula semua baris utama. Untuk mengatasi had ini, pertimbangkan strategi berikut:
SQL Server 2005 dan ke atas
Gunakan klausa OVER():
<code class="language-sql">SELECT col1, col2 FROM ( SELECT col1, col2, ROW_NUMBER() OVER (ORDER BY ID) AS RowNum FROM MyTable ) AS MyDerivedTable WHERE MyDerivedTable.RowNum BETWEEN @startRow AND @endRow</code>
SQL Server 2000
Paging set hasil yang cekap:
Gunakan teknik halaman yang cekap, seperti menggunakan kursor yang dikira atau bergantung pada mekanisme halaman tersuai.
Sila rujuk kaedah berikut:
Arahan lain
Atas ialah kandungan terperinci Bagaimana untuk Mensimulasikan OFFSET dalam Pertanyaan Pelayan SQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!