Heim > Datenbank > MySQL-Tutorial > So fragen Sie den Zeitraum in MySQL ab

So fragen Sie den Zeitraum in MySQL ab

coldplay.xixi
Freigeben: 2020-10-29 16:22:15
Original
6167 Leute haben es durchsucht

MySQL-Abfragezeitraummethode: 1. Traditionelle Methode, dh Angabe der Startzeit und Endzeit 2. UNIX-Zeitstempel, jeder Zeitpunkt entspricht einem eindeutigen UNIX-Zeitstempel, die Funktion ist [UNIX_TIMESTAMP(datetime)].

So fragen Sie den Zeitraum in MySQL ab

MySQL-Abfragezeitraummethode:

Methode 1: Traditionelle Methode, dh geben Sie die Startzeit und die Endzeit an und verwenden Sie „zwischen“ oder „<“, „>“ Um Bedingungen festzulegen, beispielsweise um die Anzahl der Datenelemente vom 1. März 2010 bis zum 2. März 2010 abzufragen, können Sie

select count(*) from sometable where datetimecolumn>=&#39;2010-03-01 00:00:00&#39; and datetimecolumn<&#39;2010-03-02 00:00:00&#39;但是,这种方法由于时间不是整数型数据,所以在比较的时候效率较低,所以如果数据量较大,可以将时间转换为整数型的UNIX时间戳,这就是方法二。
Nach dem Login kopieren

Methode 2 verwenden: UNIX-Zeitstempel, jeder Zeitpunkt entspricht einem eindeutigen UNIX-Zeitstempel, der Zeit Der Stempel beginnt mit der Zeitmessung bei „1970-01-01 00:00:00“, was 0 ist, und erhöht sich jede Sekunde um 1. MySql verfügt über integrierte Austauschfunktionen zwischen traditioneller Zeit und UNIX-Zeit:

  • UNIX_TIMESTAMP(datetime)

  • FROM_UNIXTIME(unixtime)

Beispiel: Das Ausführen von

Code lautet wie folgt:

SELECT UNIX_TIMESTAMP(&#39;2010-03-01 00:00:00&#39;)
Nach dem Login kopieren

gibt 126 7372800 zurück

Run

SELECT FROM_UNIXTIME(1267372800)
Nach dem Login kopieren

Return '2010-03-01 00:00:00'

Wir können also die Daten im Zeitfeld durch eine ganzzahlige UNIX-Zeit ersetzen, sodass die Vergleichszeit eine ganze Zahl wird Vergleichen und einen Index erstellen Dies kann die Effizienz erheblich verbessern. Bei der Abfrage müssen Sie die Startzeit und die Endzeit vor dem Vergleich in die UNIX-Zeit konvertieren, z. B.:

select count(*) from sometable where datetimecolumn>=UNIX_TIMESTAMP(&#39;2010-03-01 00:00:00&#39;) and datetimecolumn<UNIX_TIMESTAMP(&#39;2010-03-02 00:00:00&#39;)
Nach dem Login kopieren

Sie können sie auch im aufrufenden Programm in die UNIX-Zeit konvertieren und diese dann an MySql übergeben Dies ist förderlich für eine schnelle Abfragezeit, die Anzeigezeit muss jedoch erneut umgekehrt werden.

Weitere verwandte kostenlose Lernempfehlungen: MySQL-Tutorial(Video)

Das obige ist der detaillierte Inhalt vonSo fragen Sie den Zeitraum in MySQL ab. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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