> 데이터 베이스 > MySQL 튜토리얼 > MySQL과 SQL Server에서 두 날짜 사이의 날짜 목록을 생성하는 방법은 무엇입니까?

MySQL과 SQL Server에서 두 날짜 사이의 날짜 목록을 생성하는 방법은 무엇입니까?

Barbara Streisand
풀어 주다: 2025-01-22 04:42:08
원래의
303명이 탐색했습니다.

How to Generate a List of Dates Between Two Dates in MySQL and SQL Server?

두 날짜 사이의 날짜 목록 생성

MySQL은 지정된 날짜 범위 내의 날짜 목록을 검색하는 표준 함수를 제공합니다. 단계는 다음과 같습니다.

1. 저장 프로시저 만들기:

필요한 날짜 범위를 생성하는 저장 프로시저를 만듭니다. make_intervals 저장 프로시저는 일, 분, 초 등 다양한 유형의 간격을 생성할 수 있습니다.

2. 프로세스 코드:

<code class="language-sql">CREATE PROCEDURE make_intervals(
    startdate timestamp, 
    enddate timestamp, 
    intval integer, 
    unitval varchar(10)
)
BEGIN
    -- ... (存储过程代码,请参考答案中的完整代码)
END;</code>
로그인 후 복사

3. 샘플 간격 생성:

2009-01-01과 2009-01-10 사이의 날짜 목록을 생성하려면 다음 명령을 실행합니다.

<code class="language-sql">call make_intervals('2009-01-01 00:00:00', '2009-01-10 00:00:00', 1, 'DAY');</code>
로그인 후 복사

4. 데이터 연결:

생성된 날짜 범위(time_intervals 임시 테이블에 있음)를 데이터 테이블과 결합하여 필요에 따라 데이터를 집계합니다.

예제 데이터 시나리오:

마찬가지로 SQL Server용 함수를 만들 수 있습니다. 이 함수는 질문에 언급된 것과 유사한 결과를 생성합니다.

<code class="language-sql">CREATE FUNCTION GetDateList(@StartDate DATETIME, @EndDate DATETIME, @Interval INT, @Unit VARCHAR(10))
RETURNS TABLE
AS
BEGIN
    DECLARE @ThisDate DATETIME = @StartDate;
    WHILE @ThisDate <= @EndDate
    -- ... (函数代码,请参考答案中的完整代码)
END;</code>
로그인 후 복사

위 내용은 MySQL과 SQL Server에서 두 날짜 사이의 날짜 목록을 생성하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿