Rumah > pangkalan data > tutorial mysql > Bagaimanakah Saya Boleh Mengira Baris dengan Cekap dalam Jadual Pangkalan Data Besar Merentasi Vendor Berbeza?

Bagaimanakah Saya Boleh Mengira Baris dengan Cekap dalam Jadual Pangkalan Data Besar Merentasi Vendor Berbeza?

Linda Hamilton
Lepaskan: 2025-01-14 16:41:44
asal
940 orang telah melayarinya

How Can I Efficiently Count Rows in a Massive Database Table Across Different Vendors?

Petua untuk mengira baris dalam jadual pangkalan data yang besar

Apabila berurusan dengan jadual pangkalan data yang sangat besar, mengira baris dengan tepat boleh menjadi satu cabaran. Banyak artikel menunjukkan bahawa kaedah SELECT COUNT(*) FROM TABLE_NAME tradisional mempunyai prestasi yang lemah apabila berurusan dengan set data yang besar. Artikel ini meneroka penyelesaian kiraan baris bebas vendor pangkalan data, dengan mengambil kira keperluan khusus berikut:

  • Agnostik vendor pangkalan data, meliputi MySQL, Oracle dan MS SQL Server
  • Penyelesaian SQL tulen
  • Jangan gunakan alat luaran atau ubah suai reka bentuk pangkalan data

Penyelesaian agnostik vendor pangkalan data

Malangnya, pada masa ini tiada penyelesaian vendor-agnostik pangkalan data yang boleh mengatasi kaedah COUNT(*) dan memperoleh bilangan baris yang tepat. Sintaks standard masih merupakan kaedah yang paling boleh dipercayai.

Penyelesaian Anggaran Pelayan SQL

SQL Server menyediakan beberapa penyelesaian anggaran, tetapi kaedah ini berada di luar skop artikel ini kerana ia tidak dapat memenuhi pengiraan tepat yang diperlukan oleh soalan.

Tambahan: Contoh Pelayan SQL

Untuk menggambarkan masalah, kami menguji jadual dengan 1.4 bilion baris dan 12 lajur:

  • SELECT COUNT(*) FROM MyBigtable WITH (NOLOCK): Ia mengambil masa 5 minit dan 46 saat, dan hasil pengiraan ialah 1,401,659,700
  • SELECT Total_Rows = SUM(st.row_count) FROM sys.dm_db_partition_stats st WHERE object_name(object_id) = 'MyBigtable' AND (index_id

Yang terakhir mengembalikan bilangan baris yang lebih rendah sedikit disebabkan oleh penulisan serentak semasa ujian. Oleh itu, SELECT COUNT(*) masih menjadi kaedah pilihan untuk mendapatkan bilangan baris yang tepat.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengira Baris dengan Cekap dalam Jadual Pangkalan Data Besar Merentasi Vendor Berbeza?. 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