Pengiraan jumlah berjalan dengan cekap adalah penting apabila berurusan dengan data siri masa dalam SQL Server. Beberapa kaedah wujud, masing-masing mempunyai kekuatan dan kelemahan tersendiri.
Teknik Pernyataan Set Agregator
Satu pendekatan menggunakan pernyataan set agregat, seperti yang ditunjukkan di bawah:
<code class="language-sql">INSERT INTO @AnotherTbl(id, somedate, somevalue, runningtotal) SELECT id, somedate, somevalue, null FROM TestTable ORDER BY somedate DECLARE @RunningTotal int SET @RunningTotal = 0 UPDATE @AnotherTbl SET @RunningTotal = runningtotal = @RunningTotal + somevalue FROM @AnotherTbl</code>
Kaveat Kaedah Penyata Set-Agregator
Kecekapan kaedah ini diimbangi oleh had kritikal: perintah pemprosesan pernyataan UPDATE
tidak dijamin. Ini boleh membawa kepada hasil yang tidak tepat melainkan data diisih mengikut kunci utama menaik.
Kaedah Alternatif
Beberapa alternatif menawarkan hasil yang lebih dipercayai:
Penilaian Prestasi
Ujian prestasi mendedahkan bahawa pendekatan berasaskan kursor secara amnya menawarkan gabungan kelajuan dan kebolehpercayaan terbaik untuk mengira jumlah larian dalam SQL Server, terutamanya untuk set data yang besar.
Memilih Pendekatan yang Tepat
Kaedah optimum bergantung pada saiz set data dan keperluan prestasi. Untuk set data yang besar di mana ketepatan adalah yang terpenting, pendekatan berasaskan kursor disyorkan. Untuk set data atau situasi yang lebih kecil di mana susunan yang tepat tidak kritikal, kaedah alternatif mungkin memadai.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengira Jumlah Berjalan dengan Cekap dalam Pelayan SQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!