Heim > Datenbank > MySQL-Tutorial > Wie erstelle ich eine Liste von Daten zwischen zwei Daten in MySQL und SQL Server?

Wie erstelle ich eine Liste von Daten zwischen zwei Daten in MySQL und SQL Server?

Barbara Streisand
Freigeben: 2025-01-22 04:42:08
Original
303 Leute haben es durchsucht

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

Erstellen Sie eine Liste mit Daten zwischen zwei Daten

MySQL bietet Standardfunktionen zum Abrufen einer Liste von Daten innerhalb eines bestimmten Datumsbereichs. Die Schritte sind wie folgt:

1. Gespeicherte Prozedur erstellen:

Erstellen Sie eine gespeicherte Prozedur, um den erforderlichen Datumsbereich zu generieren. make_intervals Gespeicherte Prozeduren können verschiedene Arten von Intervallen erstellen, einschließlich Tage, Minuten und Sekunden.

2. Prozesscode:

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

3. Beispielintervallgenerierung:

Um eine Liste der Daten zwischen dem 01.01.2009 und dem 10.01.2009 zu erstellen, führen Sie den folgenden Befehl aus:

<code class="language-sql">call make_intervals('2009-01-01 00:00:00', '2009-01-10 00:00:00', 1, 'DAY');</code>
Nach dem Login kopieren

4. Verbinden Sie sich mit Ihren Daten:

Verknüpfen Sie den generierten Datumsbereich (in der time_intervals temporären Tabelle) mit Ihrer Datentabelle, um die Daten nach Bedarf zu aggregieren.

Beispieldatenszenario:

Ähnlich können Sie eine Funktion für SQL Server erstellen. Diese Funktion führt zu ähnlichen Ergebnissen wie in der Frage:

<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>
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie erstelle ich eine Liste von Daten zwischen zwei Daten in MySQL und SQL Server?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage