PILIH COUNT() atau mysql_num_rows() : Manakah yang Lebih Baik untuk Jadual Besar dalam PHP?

Susan Sarandon
Lepaskan: 2024-11-01 18:16:30
asal
426 orang telah melayarinya

  SELECT COUNT() or mysql_num_rows() : Which is Better for Large Tables in PHP?

Pengoptimuman MySQL: SELECT COUNT() vs mysql_num_rows() untuk Jadual Besar

Dalam pengoptimuman pangkalan data, adalah penting untuk memilih kaedah yang betul untuk memproses data yang besar dengan cekap. SELECT COUNT() dan mysql_num_rows() ialah dua fungsi yang biasa digunakan dalam PHP apabila berurusan dengan jadual besar. Walau bagaimanapun, ciri prestasi mereka berbeza dengan ketara.

SELECT COUNT() vs mysql_num_rows()

SELECT COUNT() mengembalikan kiraan baris yang sepadan dengan syarat yang ditetapkan. Walau bagaimanapun, ia tidak mendapatkan semula data sebenar, dengan itu menjimatkan memori dan sumber pemprosesan.

mysql_num_rows() mengembalikan bilangan baris dalam set hasil. Walau bagaimanapun, untuk menggunakan mysql_num_rows(), pelayan mesti mendapatkan semula keseluruhan keputusan yang ditetapkan ke dalam memori, yang boleh menjadi intensif sumber untuk jadual besar.

Pertimbangan Prestasi

Untuk jadual rekod 60 juta anda, menggunakan SELECT COUNT() disyorkan atas sebab prestasi. Secara dalaman, pelayan mengoptimumkan pertanyaan COUNT() untuk memperuntukkan memori hanya untuk hasil kiraan, dengan ketara mengurangkan penggunaan memori.

Sebaliknya, mysql_num_rows() memerlukan pelayan memproses dan memperuntukkan memori untuk keseluruhan hasil. ditetapkan. Ini boleh membawa kepada penurunan prestasi, terutamanya untuk jadual besar.

Penomboran untuk Hasil Carian

Untuk penomboran dengan hasil carian, anda sedang menggunakan pendekatan dua langkah. Dalam langkah pertama, anda mendapatkan semula semua hasil carian dan dalam langkah kedua, anda mengiranya untuk membuat penomboran menggunakan SELECT COUNT().

Untuk meningkatkan prestasi, lebih baik menggunakan SELECT COUNT() bersama-sama dengan keadaan WHERE dalam satu pertanyaan, seperti ini:

<code class="php">$condition = " fname='rinchik' ";
$result_count = "SELECT COUNT(*) FROM my_large_table WHERE" . $condition;</code>
Salin selepas log masuk

Pendekatan ini menghapuskan keperluan untuk pertanyaan SELECT COUNT() tambahan dan menjimatkan masa pemprosesan.

Kesimpulan

Apabila bekerja dengan jadual besar, adalah penting untuk menggunakan SELECT COUNT() atas mysql_num_rows() atas sebab prestasi. Dengan mengoptimumkan pertanyaan, anda boleh meningkatkan kelajuan dan kecekapan keseluruhan skrip PHP anda dengan ketara.

Atas ialah kandungan terperinci PILIH COUNT() atau mysql_num_rows() : Manakah yang Lebih Baik untuk Jadual Besar dalam PHP?. 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
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!