Резюме :в този урок ще научите как да използвате SQLite BETWEEN оператор, за да провери дали дадена стойност е в диапазон от стойности.
Въведение в SQLite BETWEEN Оператор
BETWEEN операторът е логически оператор, който проверява дали дадена стойност е в диапазона от стойности. Ако стойността е в посочения диапазон, BETWEEN операторът връща true. BETWEEN операторът може да се използва в WHERE клауза на SELECT , DELETE , UPDATE и REPLACE изявления.
Следното илюстрира синтаксиса на SQLite BETWEEN оператор:
test_expression BETWEEN low_expression AND high_expression
Code language: SQL (Structured Query Language) (sql) В този синтаксис:
test_expressionе израз за тестване в диапазона, дефиниран отlow_expressionиhigh_expression.low_expressionиhigh_expressionе всеки валиден израз, който определя ниските и високите стойности на диапазона.low_expressionтрябва да е по-малко или равно наhigh_expression, илиBETWEENis винаги връща false.ANDключова дума е заместител, който указваtest_expressionтрябва да е в диапазона, определен отlow_expressionиhigh_expression.
Имайте предвид, че BETWEEN операторът е включващ. Връща true, когато test_expression е по-малко или равно на high_expression и по-голям или равен на стойността на low_expression :
test_expression >= low_expression AND test_expression <= high_expression
Code language: SQL (Structured Query Language) (sql) За да посочите изключителен диапазон, използвате операторите по-голямо от (>) и по-малко от (<).
Имайте предвид, че ако има някакъв вход в BETWEEN операторът е NULL, резултатът е NULL или неизвестен, за да бъдем точни.
За да отречете резултата от BETWEEN оператор, използвате NOT BETWEEN оператор, както следва:
test_expression NOT BETWEEN low_expression AND high_expression
Code language: SQL (Structured Query Language) (sql)
НЕ BETWEEN връща true, ако стойността на test_expression е по-малко от стойността на low_expression или по-голяма от стойността на high_expression :
test_expression < low_expression OR test_expression > high_expression
Code language: SQL (Structured Query Language) (sql) SQLite BETWEEN примери за оператор
Ще използваме invoices таблица от примерната база данни за демонстрацията:
SQLite BETWEEN пример за числови стойности
Следното изявление намира фактури, чиято обща сума е between 14,96 и 18,86:
SELECT
InvoiceId,
BillingAddress,
Total
FROM
invoices
WHERE
Total BETWEEN 14.91 and 18.86
ORDER BY
Total;
Code language: SQL (Structured Query Language) (sql) Ето изхода:
Както можете да видите, фактурите, чиято обща сума е 14,91 или 18,86, са включени в набора от резултати.
SQLite NOT BETWEEN пример за числови стойности
За да намерите фактурите, чиято обща сума не е между 1 и 20, използвате NOT BETWEEN оператор, както е показано в следната заявка:
SELECT
InvoiceId,
BillingAddress,
Total
FROM
invoices
WHERE
Total NOT BETWEEN 1 and 20
ORDER BY
Total;
Code language: SQL (Structured Query Language) (sql) Следната снимка показва изхода:
Както е ясно показано в изхода, резултатът включва фактурите, чиято обща сума е по-малка от 1 и по-голяма от 20.
SQLite BETWEEN пример за дати
Следният пример намира фактури, чиито дати на фактури са от January 1 2010 и January 31 2010 :
SELECT
InvoiceId,
BillingAddress,
InvoiceDate,
Total
FROM
invoices
WHERE
InvoiceDate BETWEEN '2010-01-01' AND '2010-01-31'
ORDER BY
InvoiceDate;
Code language: SQL (Structured Query Language) (sql) Ето изхода:
SQLite NOT BETWEEN пример за дати
Следното извлечение намира фактури, чиито дати не са между 3 януари 2009 г. и 01 декември 2013 г.:
SELECT
InvoiceId,
BillingAddress,
date(InvoiceDate) InvoiceDate,
Total
FROM
invoices
WHERE
InvoiceDate NOT BETWEEN '2009-01-03' AND '2013-12-01'
ORDER BY
InvoiceDate;
Code language: SQL (Structured Query Language) (sql) Резултатът е както следва:
В този урок научихте как да използвате SQLite BETWEEN оператор, за да провери дали дадена стойност е в диапазон от стойности