Sammanfattning :i denna handledning kommer du att lära dig hur du använder SQLite BETWEEN
operatorn för att testa om ett värde ligger inom ett värdeintervall.
Introduktion till SQLite BETWEEN
Operatör
BETWEEN
operator är en logisk operator som testar om ett värde ligger inom värdeintervallet. Om värdet är inom det angivna intervallet visas BETWEEN
operatören returnerar sant. BETWEEN
operatorn kan användas i WHERE
satsen i SELECT
, RADERA
, UPPDATERA
och REPLACE
uttalanden.
Följande illustrerar syntaxen för SQLite BETWEEN
operatör:
test_expression BETWEEN low_expression AND high_expression
Code language: SQL (Structured Query Language) (sql)
I denna syntax:
test_expression
är ett uttryck att testa för inom det intervall som definieras avlågt_uttryck
ochhögt_uttryck
.lågt_uttryck
ochhögt_uttryck
är vilket giltigt uttryck som helst som anger de låga och höga värdena för intervallet.lågt_uttryck
bör vara mindre än eller lika medhigh_expression
, ellerBETWEEN
är alltid falskt.OCH nyckelordet är en platshållare som indikerar test_expression
bör vara inom det intervall som anges avlågt_uttryck
ochhögt_uttryck
.
Observera att BETWEEN
operatören är inkluderande. Den returnerar sant när test_expression
är mindre än eller lika med high_expression
och större än eller lika med värdet på lågt_uttryck
:
test_expression >= low_expression AND test_expression <= high_expression
Code language: SQL (Structured Query Language) (sql)
För att ange ett exklusivt intervall använder du operatorerna större än (>) och mindre än (<).
Observera att om någon inmatning till BETWEEN
operatorn är NULL, resultatet är NULL, eller okänt för att vara exakt.
För att förneka resultatet av BETWEEN
operatorn använder du INTE MELLAN
operatör enligt följande:
test_expression NOT BETWEEN low_expression AND high_expression
Code language: SQL (Structured Query Language) (sql)
INTE BETWEEN
returnerar sant om värdet på test_expression
är mindre än värdet för lågt_uttryck
eller större än värdet för high_expression
:
test_expression < low_expression OR test_expression > high_expression
Code language: SQL (Structured Query Language) (sql)
SQLite MELLAN
operatörsexempel
Vi kommer att använda fakturorna
tabell från exempeldatabasen för demonstrationen:
SQLite MELLAN
numeriska värden exempel
Följande uttalande hittar fakturor vars totala summa är mellan
14.96 och 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)
Här är resultatet:
Som du kan se ingår de fakturor vars totala summa är 14,91 eller 18,86 i resultatuppsättningen.
SQLite INTE MELLAN
numeriska värden exempel
För att hitta de fakturor vars totalsumma inte är mellan 1 och 20 använder du INTE MELLAN
operator som visas i följande fråga:
SELECT
InvoiceId,
BillingAddress,
Total
FROM
invoices
WHERE
Total NOT BETWEEN 1 and 20
ORDER BY
Total;
Code language: SQL (Structured Query Language) (sql)
Följande bild visar utdata:
Som tydligt framgår av resultatet inkluderar resultatet de fakturor vars totalsumma är mindre än 1 och större än 20.
SQLite MELLAN
datum exempel
Följande exempel hittar fakturor vars fakturadatum är från 1 januari 2010
och 31 januari 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)
Här är resultatet:
SQLite INTE MELLAN
datum exempel
Följande uttalande hittar fakturor vars datum inte är mellan 3 januari 2009 och 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)
Utgången är som följer:
I den här handledningen har du lärt dig hur du använder SQLite BETWEEN
operatorn för att testa om ett värde ligger inom ett värdeintervall