Oversigt :i denne øvelse vil du lære, hvordan du bruger SQLite BETWEEN operatør for at teste, om en værdi er i en række værdier.
Introduktion til SQLite BETWEEN Operatør
BETWEEN operator er en logisk operator, der tester, om en værdi er inden for rækkevidde af værdier. Hvis værdien er i det angivne område, vises BETWEEN operatør returnerer sand. BETWEEN operatoren kan bruges i WHERE klausul af SELECT , SLET , OPDATERING , og REPLACE udsagn.
Det følgende illustrerer syntaksen for SQLite BETWEEN operatør:
test_expression BETWEEN low_expression AND high_expression
Code language: SQL (Structured Query Language) (sql) I denne syntaks:
test_udtryker et udtryk, der skal testes for i området defineret aflavt_udtrykoghigh_expression.lavt_udtrykoghigh_expressioner ethvert gyldigt udtryk, der angiver de lave og høje værdier for området.lavt_udtrykskal være mindre end eller lig medhigh_expressionellerBETWEENreturnerer altid falsk.OG søgeord er en pladsholder, der angiver test_expressionskal være inden for det område, der er angivet aflow_expressionoghigh_expression.
Bemærk, at BETWEEN operatør er inklusiv. Det returnerer sandt, når test_expression er mindre end eller lig med high_expression og større end eller lig med værdien af low_expression :
test_expression >= low_expression AND test_expression <= high_expression
Code language: SQL (Structured Query Language) (sql) For at angive et eksklusivt område, bruger du større end (>) og mindre end operatorerne (<).
Bemærk, at hvis der er input til BETWEEN operatoren er NULL, resultatet er NULL eller ukendt for at være præcis.
For at afvise resultatet af BETWEEN operatør, bruger du NOT MELLEM operatør som følger:
test_expression NOT BETWEEN low_expression AND high_expression
Code language: SQL (Structured Query Language) (sql)
IKKE BETWEEN returnerer sand, hvis værdien af test_expression er mindre end værdien af low_expression eller større end værdien af high_expression :
test_expression < low_expression OR test_expression > high_expression
Code language: SQL (Structured Query Language) (sql) SQLite MELLEM operatøreksempler
Vi bruger fakturaerne tabel fra eksempeldatabasen til demonstrationen:
SQLite MELLEM numeriske værdier eksempel
Følgende erklæring finder fakturaer, hvis total er mellem 14.96 og 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) Her er outputtet:
Som du kan se, er de fakturaer, hvis total er 14,91 eller 18,86, inkluderet i resultatsættet.
SQLite IKKE MELLEM numeriske værdier eksempel
For at finde de fakturaer, hvis total ikke er mellem 1 og 20, skal du bruge IKKE MELLEM operator som vist i følgende forespørgsel:
SELECT
InvoiceId,
BillingAddress,
Total
FROM
invoices
WHERE
Total NOT BETWEEN 1 and 20
ORDER BY
Total;
Code language: SQL (Structured Query Language) (sql) Følgende billede viser output:
Som det tydeligt fremgår af outputtet, inkluderer resultatet de fakturaer, hvis total er mindre end 1 og større end 20.
SQLite MELLEM eksempel på datoer
Følgende eksempel finder fakturaer, hvis fakturadatoer er fra 1. januar 2010 og 31. januar 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) Her er outputtet:
SQLite IKKE MELLEM eksempel på datoer
Følgende erklæring finder fakturaer, hvis datoer ikke er mellem 3. januar 2009 og 1. december 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) Udgangen er som følger:
I denne øvelse har du lært, hvordan du bruger SQLite BETWEEN operatør for at teste, om en værdi er i en række værdier