temp table に分単位の可変時間増分を含む datetime シーケンスを作成する必要があります。5 を使用すると、出力は次のようになります。
2012-12-13 04:20:00.000
2012-12-13 04:25:00.000
2012-12-13 04:30:00.000
2012-12-13 04:35:00.000
2012-12-13 04:40:00.000
2012-12-13 04:50:00.000
これはできますか?
temp table に分単位の可変時間増分を含む datetime シーケンスを作成する必要があります。5 を使用すると、出力は次のようになります。
2012-12-13 04:20:00.000
2012-12-13 04:25:00.000
2012-12-13 04:30:00.000
2012-12-13 04:35:00.000
2012-12-13 04:40:00.000
2012-12-13 04:50:00.000
これはできますか?
シーケンス テーブルを使用することをお勧めします。日時シーケンスをすばやく簡単に生成するのに非常に役立つため、すべてのデータベースにシーケンス テーブルが必要です。
CREATE TABLE Sequence
(Number int PRIMARY KEY)
次に、このテーブルに 0 から 1,000,000 までの整数を入力します。心配する必要はありません。これを行う必要があるのは 1 回だけです。
次に、次のバリエーションを使用して、好きなだけ (最大 1,000,001) 日時シーケンスを生成できます。
SELECT DATEADD(minute, Number * @stepsize, @StartDateTime)
FROM Sequence
WHERE Number<@NumberRequired
これは通常、CTE を使用するよりも高速であり、テーブルから直接情報を取得するのとほぼ同じ速さです。実際、一時テーブルを使用するのではなく、これを使用して SP (またはテーブル値関数) を構築することを検討することができます。これは、ほぼ同じ速度でより柔軟になるためです。