L'operatore Tra viene utilizzato per selezionare i valori all'interno di un intervallo.
Il SQL tra l'operatore
L'operatore Tra seleziona i valori all'interno di un intervallo. I valori possono essere numeri, testo o date.
SQL tra sintassi
SELECT column_name(s)
FROM table_name
WHERE column_name BETWEEN value1 AND value2;
Database Demo
In questo tutorial useremo il noto database di esempio Northwind.
Di seguito una selezione dal "Products" tabella:
ProductID | ProductName | SupplierID | CategoryID | Unit | Price |
---|---|---|---|---|---|
1 | Chais | 1 | 1 | 10 boxes x 20 bags | 18 |
2 | Chang | 1 | 1 | 24 - 12 oz bottles | 19 |
3 | Aniseed Syrup | 1 | 2 | 12 - 550 ml bottles | 10 |
4 | Chef Anton's Cajun Seasoning | 1 | 2 | 48 - 6 oz jars | 22 |
5 | Chef Anton's Gumbo Mix | 1 | 2 | 36 boxes | 21.35 |
Tra l'operatore Esempio
La seguente istruzione SQL seleziona tutti i prodotti con un prezzo compreso tra 10 e 20:
Operatore Non tra Esempio
Per visualizzare i prodotti al di fuori della gamma dell'esempio precedente, NON utilizzare TRA:
Tra l'operatore con nell'esempio
La seguente istruzione SQL seleziona tutti i prodotti con un prezzo compreso tra 10 e 20, ma i prodotti con un IDCategoria di 1,2, o non dovrebbe essere visualizzato 3:
Esempio
SELECT * FROM Products
WHERE (Price BETWEEN 10 AND 20)
AND NOT
CategoryID IN (1,2,3);
Prova tu stesso "
Tra l'operatore con il testo Valore Esempio
La seguente istruzione SQL seleziona tutti i prodotti con un ProductName che inizia con qualsiasi della lettera TRA 'C' e 'M':
Operatore Non tra con Testo Valore Esempio
La seguente istruzione SQL seleziona tutti i prodotti con un ProductName che inizia con qualsiasi della lettera non TRA 'C' e 'M':
Tabella di esempio
Di seguito una selezione dal "Orders" tabella:
OrderID | CustomerID | EmployeeID | OrderDate | ShipperID |
---|---|---|---|---|
10248 | 90 | 5 | 7/4/1996 | 3 |
10249 | 81 | 6 | 7/5/1996 | 1 |
10250 | 34 | 4 | 7/8/1996 | 2 |
10251 | 84 | 3 | 7/9/1996 | 1 |
10252 | 76 | 4 | 7/10/1996 | 2 |
Tra l'operatore con valuta Esempio
La seguente istruzione SQL seleziona tutti gli ordini con un OrderDate TRA '04-July-1996' e '09-July-1996' :
Esempio
SELECT * FROM Orders
WHERE OrderDate BETWEEN #07/04/1996# AND
#07/09/1996#;
Prova tu stesso "
Si noti che l'operatore Tra possono produrre risultati differenti in diversi database!
In alcuni database, TRA seleziona i campi che si trovano tra ed escludendo i valori di prova.
In altri database, TRA seleziona i campi che sono tra e compresi i valori di prova.
E in altri database, TRA seleziona i campi tra i valori di prova, tra cui il primo valore di prova ed escludendo l'ultimo valore di prova.
Quindi: Controlla come il database tratta l'operatore Tra!