Tipps zum Zählen von Zeilen in großen Datenbanktabellen
Beim Umgang mit sehr großen Datenbanktabellen kann das genaue Zählen von Zeilen eine Herausforderung sein. In vielen Artikeln wird darauf hingewiesen, dass herkömmliche SELECT COUNT(*) FROM TABLE_NAME
-Methoden bei der Verarbeitung großer Datenmengen eine schlechte Leistung erbringen. In diesem Artikel werden datenbankanbieterunabhängige Zeilenzähllösungen unter Berücksichtigung der folgenden spezifischen Anforderungen untersucht:
Datenbankanbieterunabhängige Lösung
Leider gibt es derzeit keine datenbankanbieterunabhängige Lösung, die die COUNT(*)
-Methode übertreffen und die genaue Anzahl von Zeilen ermitteln kann. Die Standardsyntax ist immer noch die zuverlässigste Methode.
Annäherungslösung für SQL Server
SQL Server bietet einige Näherungslösungen, diese Methoden gehen jedoch über den Rahmen dieses Artikels hinaus, da sie die für die Frage erforderliche genaue Zählung nicht erfüllen können.
Ergänzung: SQL Server-Beispiel
Um das Problem zu veranschaulichen, haben wir eine Tabelle mit 1,4 Milliarden Zeilen und 12 Spalten getestet:
SELECT COUNT(*) FROM MyBigtable WITH (NOLOCK)
: Es dauerte 5 Minuten und 46 Sekunden und das Zählergebnis war 1.401.659.700SELECT Total_Rows = SUM(st.row_count) FROM sys.dm_db_partition_stats st WHERE object_name(object_id) = 'MyBigtable' AND (index_id
Letzteres gibt aufgrund gleichzeitiger Schreibvorgänge während des Tests eine etwas geringere Anzahl von Zeilen zurück. Daher ist SELECT COUNT(*)
immer noch die bevorzugte Methode, um die genaue Anzahl der Zeilen zu ermitteln.
Das obige ist der detaillierte Inhalt vonWie kann ich Zeilen in einer umfangreichen Datenbanktabelle verschiedener Anbieter effizient zählen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!