Shrnutí :v tomto tutoriálu se naučíte používat SQLite BETWEEN operátor, který otestuje, zda je hodnota v rozsahu hodnot.
Úvod do SQLite BETWEEN Operátor
BETWEEN Operátor je logický operátor, který testuje, zda je hodnota v rozsahu hodnot. Pokud je hodnota v určeném rozsahu, BETWEEN operátor vrátí true. BETWEEN operátor lze použít v WHERE klauzule SELECT , DELETE , UPDATE a REPLACE prohlášení.
Následující text ilustruje syntaxi SQLite BETWEEN operátor:
test_expression BETWEEN low_expression AND high_expression
Code language: SQL (Structured Query Language) (sql) V této syntaxi:
test_expressionje výraz, který se má testovat v rozsahu definovaném parametremlow_expressionahigh_expression.low_expressionahigh_expressionje jakýkoli platný výraz, který určuje nízké a vysoké hodnoty rozsahu.low_expressionby měl být menší nebo rovenhigh_expressionneboBETWEENje vždy vrací false.ANDklíčové slovo je zástupný symbol, který označujetest_expressionby měl být v rozsahu určeném parametremlow_expressionahigh_expression.
Všimněte si, že BETWEEN operátor je v ceně. Vrací hodnotu true při test_expression je menší nebo roven high_expression a větší nebo rovno hodnotě low_expression :
test_expression >= low_expression AND test_expression <= high_expression
Code language: SQL (Structured Query Language) (sql) Chcete-li zadat exkluzivní rozsah, použijte operátory větší než (>) a menší než (<).
Všimněte si, že pokud je nějaký vstup do BETWEEN operátor je NULL, výsledek je NULL, přesněji neznámý.
Chcete-li negovat výsledek BETWEEN operátor, použijete NOT BETWEEN operátor takto:
test_expression NOT BETWEEN low_expression AND high_expression
Code language: SQL (Structured Query Language) (sql)
NE BETWEEN vrátí hodnotu true, pokud je hodnota test_expression je menší než hodnota low_expression nebo větší než hodnota high_expression :
test_expression < low_expression OR test_expression > high_expression
Code language: SQL (Structured Query Language) (sql) SQLite BETWEEN příklady operátorů
Použijeme invoices tabulka z ukázkové databáze pro ukázku:
SQLite BETWEEN příklad číselných hodnot
Následující výpis najde faktury, jejichž součet je between 14,96 a 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) Zde je výstup:
Jak vidíte, do sady výsledků jsou zahrnuty faktury, jejichž celková hodnota je 14,91 nebo 18,86.
SQLite NOT BETWEEN příklad číselných hodnot
Chcete-li najít faktury, jejichž součet není mezi 1 a 20, použijte NOT BETWEEN operátor, jak je znázorněno v následujícím dotazu:
SELECT
InvoiceId,
BillingAddress,
Total
FROM
invoices
WHERE
Total NOT BETWEEN 1 and 20
ORDER BY
Total;
Code language: SQL (Structured Query Language) (sql) Následující obrázek ukazuje výstup:
Jak jasně ukazuje výstup, výsledek zahrnuje faktury, jejichž součet je menší než 1 a větší než 20.
SQLite BETWEEN příklad dat
Následující příklad najde faktury, jejichž data faktur jsou z January 1 2010 a 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) Zde je výstup:
SQLite NOT BETWEEN příklad dat
Následující výpis najde faktury, jejichž data nejsou mezi 3. lednem 2009 a 1. prosincem 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) Výstup je následující:
V tomto tutoriálu jste se naučili používat SQLite BETWEEN operátor, který otestuje, zda je hodnota v rozsahu hodnot