Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Menjana Siri Penambahan Tarikh dalam T-SQL?

Bagaimana untuk Menjana Siri Penambahan Tarikh dalam T-SQL?

Barbara Streisand
Lepaskan: 2025-01-11 19:57:43
asal
518 orang telah melayarinya

How to Generate a Series of Incrementing Dates in T-SQL?

Menjana Urutan Tarikh dalam T-SQL: Kaedah Cekap

Artikel ini meneroka teknik yang cekap untuk mencipta satu siri tarikh berturut-turut dalam julat tertentu menggunakan T-SQL, serasi dengan SQL Server versi 2005 dan lebih baru. Walaupun gelung WHILE ialah pendekatan yang mungkin, ia mungkin kurang cekap untuk julat tarikh yang lebih besar. Kaedah unggul menggunakan spt_values jadual sistem.

Untuk julat tarikh sehingga 2047 hari, pertanyaan T-SQL berikut menyediakan penyelesaian yang berkesan:

<code class="language-sql">DECLARE @startDate DATETIME, @endDate DATETIME;
SET @startDate = GETDATE();
SET @endDate = DATEADD(day, 100, @startDate);

SELECT DATEADD(day, number, @startDate) AS IncrementalDate
FROM (SELECT number FROM master.dbo.spt_values WHERE [type] = 'P') AS NumberSequence
WHERE DATEADD(day, number, @startDate) < @endDate;</code>
Salin selepas log masuk

Pertanyaan ini memanfaatkan jujukan berangka dalam spt_values untuk menjana siri tarikh. Ia menambah setiap nombor dalam urutan pada @startDate, dengan berkesan mencipta tarikh kenaikan. Klausa WHERE memastikan tarikh yang dijana berada dalam julat yang dikehendaki, ditakrifkan oleh @startDate dan @endDate. Pendekatan ini mengelakkan had prestasi yang sering dikaitkan dengan kaedah gelung WHILE berulang.

Atas ialah kandungan terperinci Bagaimana untuk Menjana Siri Penambahan Tarikh dalam T-SQL?. 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