Heim > Datenbank > MySQL-Tutorial > Wie erstelle ich Datumsbereiche in MySQL mithilfe von Datumsarithmetik und Unterabfragen?

Wie erstelle ich Datumsbereiche in MySQL mithilfe von Datumsarithmetik und Unterabfragen?

DDD
Freigeben: 2025-01-19 01:07:08
Original
228 Leute haben es durchsucht

How to Generate Date Ranges in MySQL Using Date Arithmetic and Subqueries?

Verwenden Sie MySQL-Datumsoperationen und Unterabfragen, um Datumsbereiche zu generieren

In SQL kann das Abrufen einer Liste von Datumsangaben innerhalb eines bestimmten Bereichs durch die Verwendung einer Kombination aus Datumsoperationen und Unterabfragen erreicht werden. So erreichen Sie dies:

Um eine Liste von Daten zwischen zwei Daten zu erstellen, können wir die Unterabfragemethode verwenden. Ein verschachtelter Satz von Unterabfragen, die jeweils eine Folge von Zahlen (von 0 bis 9) generieren, die durch Addition kombiniert werden, um den gewünschten Datumswert zu bilden.

Die folgende Abfrage veranschaulicht diese Technik:

select * from
(select adddate('1970-01-01',t4.i*10000 + t3.i*1000 + t2.i*100 + t1.i*10 + t0.i) selected_date from
 (select 0 i union select 1 union select 2 union select 3 union select 4 union select 5 union select 6 union select 7 union select 8 union select 9) t0,
 (select 0 i union select 1 union select 2 union select 3 union select 4 union select 5 union select 6 union select 7 union select 8 union select 9) t1,
 (select 0 i union select 1 union select 2 union select 3 union select 4 union select 5 union select 6 union select 7 union select 8 union select 9) t2,
 (select 0 i union select 1 union select 2 union select 3 union select 4 union select 5 union select 6 union select 7 union select 8 union select 9) t3,
 (select 0 i union select 1 union select 2 union select 3 union select 4 union select 5 union select 6 union select 7 union select 8 union select 9) t4) v
where selected_date between '2012-02-10' and '2012-02-15'
Nach dem Login kopieren

Diese Abfrage generiert eine Liste der Daten vom 10.02.2012 bis zum 15.02.2012 (einschließlich). Die Ergebnisse sind wie folgt:

<code>date
----------
2012-02-10
2012-02-11
2012-02-12
2012-02-13
2012-02-14
2012-02-15</code>
Nach dem Login kopieren

Mit dieser Methode können Datumsbereiche generiert werden, die sich über fast 300 Jahre in der Zukunft oder Vergangenheit erstrecken.

Das obige ist der detaillierte Inhalt vonWie erstelle ich Datumsbereiche in MySQL mithilfe von Datumsarithmetik und Unterabfragen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage