Heim >Datenbank >MySQL-Tutorial >MySQL-ZWISCHEN-Nutzung

MySQL-ZWISCHEN-Nutzung

黄舟
黄舟Original
2016-12-27 17:28:053932Durchsuche

MySQL BETWEEN-Syntax

Der BETWEEN-Operator wird in WHERE-Ausdrücken verwendet, um einen Datenbereich zwischen zwei Werten auszuwählen. BETWEEN wird zusammen mit AND verwendet. Die Syntax lautet wie folgt:

WHERE column BETWEEN value1 AND value2
WHERE column NOT BETWEEN value1 AND value2

Normalerweise sollte Wert1 kleiner als Wert2 sein. Wenn BETWEEN der NOT-Operator vorangestellt ist, bedeutet dies das Gegenteil von BETWEEN, d. h. die Auswahl eines Werts außerhalb dieses Bereichs.

ZWISCHEN Instanz

Benutzerdaten mit UID zwischen 2 und 5 auswählen:

SELECT * FROM user WHERE uid BETWEEN 2 AND 5

Abfrageergebnisse wie folgt zurückgeben:

MySQL-ZWISCHEN-Nutzung

Neben numerischen Typen unterstützt BETWEEN auch Zeichenfolgenbereiche. Im Folgenden werden alle Benutzer ausgewählt, deren Benutzername zwischen a und j liegt (und den einzelnen Buchstaben k/K enthält):

SELECT * FROM user WHERE username BETWEEN 'a' AND 'k'

Zeichenbereiche unterstützen auch chinesische Schriftzeichen, aber im Allgemeinen ergeben sie keinen Sinn.

MySQL BETWEEN-Grenze

Obwohl fast alle Datenbanken den BETWEEN ... AND-Operator unterstützen, behandeln verschiedene Datenbanken BETWEEN ... AND unterschiedlich. In MySQL enthält BETWEEN die Grenzwerte value1 und value2, wie das obige Beispiel der Auswahl von Benutzerdaten mit einer UID zwischen 2 und 5.

Einige Datenbanken enthalten keine Grenzwerte für Wert1 und Wert2 (ähnlich wie > und = und

MySQL BETWEEN Zeit und Datum

BETWEEN AND wird oft verwendet, um Inhalte innerhalb eines Zeit- oder Datumsbereichs abzurufen. Hier sind einige häufige Beispiele für BETWEEN Zeit und Datum:

// int 时间戳格式,查询 2008-08-08 20:00:00 到 2009-01-01 零点之前的数据
SELECT * FROM table WHERE column_time BETWEEN 1218196800 AND 1230739199

// DATE 格式,查询 2008-08-08 到 2009-01-01 零点之前的数据
SELECT * FROM table WHERE column_time BETWEEN '2008-08-08' AND '2009-01-01'

// DATETIME 格式,查询 2008-08-08 20:00:00 到 2009-01-01 零点之前的数据
SELECT * FROM table WHERE column_time BETWEEN '2008-08-08 20:00:00' AND '2008-12-31 23:59:59'

Aber um die Daten zum aktuellen Zeitpunkt abzufragen, empfiehlt es sich, den Operator >= zu verwenden:

// DATETIME 格式,查询 2008-08-08 20:00:00 到当前时刻的数据
SELECT * FROM table WHERE column_time >= '2008-08-08 20:00:00'

Es ist ersichtlich, dass gleiche Anforderungen und unterschiedliche Feldtypen unterschiedlich geschrieben werden können. In Bezug auf die Effizienz ist das int-Zeitstempelformat das effizienteste.

Obwohl es sich bei den obigen Beispielen für BETWEEN ausschließlich um SELECT-Abfragen handelt, kann BETWEEN auch in UPDATE, DELETE und anderen SQL-Anweisungen verwendet werden, die WHERE-Ausdrücke anwenden.

MySQL BETWEEN-Datenvergleich

BETWEEN verfügt auch über eine Datenvergleichsfunktion. Die Syntax lautet wie folgt:

expr BETWEEN min AND max

Wenn der Wert von expr expression größer oder gleich ist bis min und kleiner oder gleich max ist der Rückgabewert von BETWEEN 1, andernfalls wird 0 zurückgegeben. Mit dieser Funktion können Sie feststellen, ob ein Ausdruck oder Wert in einem bestimmten Bereich liegt:

// 返回 0
SELECT 1 BETWEEN 2 AND 3
// 返回 1
SELECT 'b' BETWEEN 'a' AND 'c'
// 判断日期范围
SELECT 20080808 BETWEEN 20080101 AND 20090101

ZWISCHEN und Operatoren wie =, > Funktionen, aber BETWEEN hat einen höheren Rechenaufwand und ist noch effizienter. Natürlich weist BETWEEN Grenzwertprobleme auf und ist nicht flexibel genug. Daher erfordern unterschiedliche Situationen eine spezifische Behandlung des zu verwendenden Operators.

Das Obige ist der Inhalt von MySQL ZWISCHEN der Verwendung. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website (www.php.cn)!


Stellungnahme:
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
Vorheriger Artikel:Verwendung von MySQL INNächster Artikel:Verwendung von MySQL IN