Rumah pangkalan data tutorial mysql 高效分页的SQL技巧(以Oracle为例)

高效分页的SQL技巧(以Oracle为例)

Jun 07, 2016 pm 05:41 PM
oracle sql penomboran indeks

一般的分页写法大概就是下面的样子(所谓的三层嵌套写法),SELECT*FROM(SELECTa.*&nbs..

一般的分页写法大概就是下面的样子(所谓的“三层嵌套”写法),

在遇到显示数据表中1百万行以后的记录时,美国服务器,可能会出现性能问题。有人提出的解决方案是利用索引,首先通过扫描索引查出rowid,然后再通过rowid查出所需记录。这样做的问题是如果没有索引怎么办?以Oracle为例,下面是一个更具有一般意义的高效写法:

优化的思想是跳到第1百万位置时只是扫描了rowid,避免了扫描全部字段。当字段个数较多时,速度会有十倍的提升。本例在普通的设备上运行不到1秒就出来结果了。这一方法在千万级或亿级仍然存在问题,其原因在于循环次数并未减少。如果真有rwd这样一个字段,那么通过索引和分区等手段,也能够确保速度。不过,话又说回来,美国空间,分页显示成百上千万条记录这样的事情,虚拟主机,其欲达到的业务目的本身可否有更好的解决之道呢?

本文出自 “iData” 博客,请务必保留此出处

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

Tag artikel panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Berfungsi untuk mengira bilangan hari antara dua tarikh dalam oracle Berfungsi untuk mengira bilangan hari antara dua tarikh dalam oracle May 08, 2024 pm 07:45 PM

Berfungsi untuk mengira bilangan hari antara dua tarikh dalam oracle

Berapa lama log pangkalan data Oracle akan disimpan? Berapa lama log pangkalan data Oracle akan disimpan? May 10, 2024 am 03:27 AM

Berapa lama log pangkalan data Oracle akan disimpan?

Urutan langkah permulaan pangkalan data oracle ialah Urutan langkah permulaan pangkalan data oracle ialah May 10, 2024 am 01:48 AM

Urutan langkah permulaan pangkalan data oracle ialah

Cara menggunakan selang dalam oracle Cara menggunakan selang dalam oracle May 08, 2024 pm 07:54 PM

Cara menggunakan selang dalam oracle

Keperluan konfigurasi perkakasan pelayan pangkalan data Oracle Keperluan konfigurasi perkakasan pelayan pangkalan data Oracle May 10, 2024 am 04:00 AM

Keperluan konfigurasi perkakasan pelayan pangkalan data Oracle

Bagaimana untuk melihat bilangan kemunculan watak tertentu dalam Oracle Bagaimana untuk melihat bilangan kemunculan watak tertentu dalam Oracle May 09, 2024 pm 09:33 PM

Bagaimana untuk melihat bilangan kemunculan watak tertentu dalam Oracle

Berapa banyak memori yang diperlukan oleh oracle? Berapa banyak memori yang diperlukan oleh oracle? May 10, 2024 am 04:12 AM

Berapa banyak memori yang diperlukan oleh oracle?

Bagaimana untuk menggantikan rentetan dalam oracle Bagaimana untuk menggantikan rentetan dalam oracle May 08, 2024 pm 07:24 PM

Bagaimana untuk menggantikan rentetan dalam oracle

See all articles