Heim >Datenbank >MySQL-Tutorial >Was ist der effizienteste Weg, um die Laufzeiten in SQL Server zu berechnen?
Feier bietet eine bequeme Methode zur Durchführung solcher Berechnungen in Oracle und ANSI-SQL. SQL Server fehlt jedoch die Flexibilität, einige Anwendungsfälle bei der Implementierung von OVER
-Klauseln zu bearbeiten. OVER
Erstellen Sie eine temporäre Tabelle mit derselben Spalte wie die ursprüngliche Tabelle.
Die Reihenfolge der Anweisungsverarbeitungszeilen entsprechen möglicherweise nicht immer dem Datum des Datums.
UPDATE
Testerdateneinstellungen:
Testmethode:
Test 1: Verwandte untergeordnete Abfrage
<code class="language-sql">CREATE TABLE #t ( ord INT PRIMARY KEY, total INT, running_total INT ); SET NOCOUNT ON; DECLARE @i INT; SET @i = 0; BEGIN TRAN; WHILE @i < 10000 BEGIN INSERT INTO #t (ord, total) VALUES (@i, ABS(CHECKSUM(NEWID()) % 1000)); SET @i = @i + 1; END; COMMIT TRAN;</code>
Test 2: Cross -Connection
Test 3: Cursor
<code class="language-sql">SELECT ord, total, (SELECT SUM(total) FROM #t b WHERE b.ord <= a.ord) AS RunningTotal FROM #t a ORDER BY a.ord;</code>
Test 4: Aktualisieren Sie die Fähigkeiten
<code class="language-sql">SELECT a.ord, a.total, SUM(b.total) AS RunningTotal FROM #t a CROSS JOIN #t b WHERE b.ord <= a.ord GROUP BY a.ord, a.total ORDER BY a.ord;</code>Durch die Implementierungseffizienz der oben genannten vier Methoden kann die Best Practice zur Berechnung der Akkumulation auf dem SQL -Server erhalten werden. Es ist zu beachten, dass die tatsächliche Leistung von Datenvolumen und Serverkonfiguration variieren kann.
Das obige ist der detaillierte Inhalt vonWas ist der effizienteste Weg, um die Laufzeiten in SQL Server zu berechnen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!