sql >> Database teknologi >  >> RDS >> SQLite

SQLite MELLEM

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_udtryk er et udtryk, der skal testes for i området defineret af lavt_udtryk og high_expression .
  • lavt_udtryk og high_expression er ethvert gyldigt udtryk, der angiver de lave og høje værdier for området. lavt_udtryk skal være mindre end eller lig med high_expression eller BETWEEN returnerer altid falsk.
  • OG søgeord er en pladsholder, der angiver test_expression skal være inden for det område, der er angivet af low_expression og high_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


  1. PostgreSQL tabelvariabel

  2. Kan ikke bruge UPDATE med OUTPUT-klausul, når en trigger er på bordet

  3. LEFT JOIN vs. LEFT OUTER JOIN i SQL Server

  4. 7 strategier til at få mest muligt ud af dine møder