집 >데이터 베이스 >MySQL 튜토리얼 >T-SQL에서 일련의 증분 날짜를 생성하는 방법은 무엇입니까?
T-SQL에서 날짜 시퀀스 생성: 효율적인 방법
이 문서에서는 SQL Server 2005 이상 버전과 호환되는 T-SQL을 사용하여 지정된 범위 내에서 일련의 연속 날짜를 생성하는 효율적인 기술을 살펴봅니다. WHILE
루프도 가능한 접근 방식이지만 날짜 범위가 클수록 효율성이 떨어질 수 있습니다. 우수한 방법은 spt_values
시스템 테이블
최대 2047일의 날짜 범위에 대해 다음 T-SQL 쿼리는 효과적인 솔루션을 제공합니다.
<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>
이 쿼리는 spt_values
내의 숫자 순서를 활용하여 날짜 계열을 생성합니다. @startDate
에 시퀀스의 각 숫자를 추가하여 효과적으로 증분 날짜를 생성합니다. WHERE
절은 생성된 날짜가 @startDate
및 @endDate
으로 정의된 원하는 범위 내에 포함되도록 합니다. 이 접근 방식은 반복 WHILE
루프 방법
위 내용은 T-SQL에서 일련의 증분 날짜를 생성하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!