Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Condizioni di confronto
Le condizioni di confronto esprimono le relazioni logiche tra due valori. Tutte le condizioni di confronto sono operatori binari con un tipo di ritorno booleano.AWS Clean Roomssupporta gli operatori di confronto descritti nella tabella seguente.
Operatore | Sintassi | Descrizione |
---|---|---|
< | a < b
|
Valorea è inferiore al valoreb . |
> | a > b
|
Valorea è maggiore del valoreb . |
<= | a <= b
|
Valorea è minore o uguale al valoreb . |
>= | a >= b
|
Valorea è maggiore o uguale al valoreb . |
= | a = b
|
Valorea è uguale al valoreb . |
<> o != | a <> b or a != b
|
Valorea non è uguale al valoreb . |
a = TRUE |
a IS TRUE |
Valorea è booleanoTRUE. |
Note per l'utilizzo
- = ANY | SOME
-
Le parole chiave ANY e SOME sono sinonimi diNELcondizione. Le parole chiave ANY e SOME restituiscono true se il confronto è vero per almeno un valore restituito da una subquery che restituisce uno o più valori.AWS Clean Roomssupporta solo la condizione = (equals) per ANY e SOME. Le condizioni di disuguaglianza non sono supportate.
Nota
Il predicato ALL non è supportato.
- <> ALL
-
La parola chiave ALL è sinonima di NOT IN (consulta la condizione Condizione IN) e restituisce true se l'espressione non è compresa nei risultati della subquery. AWS Clean Rooms supporta solo la condizione <> o != (non uguale) per ALL. Altre condizioni di confronto non sono supportate.
- IS TRUE/FALSE/UNKNOWN
-
I valori diversi da zero equivalgono a TRUE, 0 equivale a FALSE e null equivale a UNKNOWN. consultare il tipo di dati Tipo booleano.
Esempi
Di seguito sono elencati alcuni semplici esempi di condizioni di confronto:
a = 5 a < b min(x) >= 5 qtysold = any (select qtysold from sales where dateid = 1882
La seguente query restituisce le sedi con più di 10.000 posti dalla tabella VENUE:
select venueid, venuename, venueseats from venue where venueseats > 10000 order by venueseats desc; venueid | venuename | venueseats ---------+--------------------------------+------------ 83 | FedExField | 91704 6 | New York Giants Stadium | 80242 79 | Arrowhead Stadium | 79451 78 | INVESCO Field | 76125 69 | Dolphin Stadium | 74916 67 | Ralph Wilson Stadium | 73967 76 | Jacksonville Municipal Stadium | 73800 89 | Bank of America Stadium | 73298 72 | Cleveland Browns Stadium | 73200 86 | Lambeau Field | 72922 ... (57 rows)
Questo esempio seleziona dalla tabella USERS gli utenti (USERID) ai quali piace la musica rock:
select userid from users where likerock = 't' order by 1 limit 5; userid -------- 3 5 6 13 16 (5 rows)
Questo esempio seleziona dalla tabella USERS gli utenti (USERID) per i quali si sa se gli piace la musica rock:
select firstname, lastname, likerock from users where likerock is unknown order by userid limit 10; firstname | lastname | likerock ----------+----------+---------- Rafael | Taylor | Vladimir | Humphrey | Barry | Roy | Tamekah | Juarez | Mufutau | Watkins | Naida | Calderon | Anika | Huff | Bruce | Beck | Mallory | Farrell | Scarlett | Mayer | (10 rows
Esempi con una colonna TIME
La tabella di esempio seguente TIME_TEST ha una colonna TIME_VAL (tipo TIME) con tre valori inseriti.
select time_val from time_test; time_val --------------------- 20:00:00 00:00:00.5550 00:58:00
Nell'esempio seguente vengono estratte le ore da ogni timetz_val.
select time_val from time_test where time_val < '3:00'; time_val --------------- 00:00:00.5550 00:58:00
L'esempio seguente confronta due valori letterali temporali.
select time '18:25:33.123456' = time '18:25:33.123456'; ?column? ---------- t
Esempi con una colonna TIMETZ
La tabella di esempio seguente TIMETZ_TEST ha una colonna TIMETZ_VAL (tipo TIMETZ) con tre valori inseriti.
select timetz_val from timetz_test; timetz_val ------------------ 04:00:00+00 00:00:00.5550+00 05:58:00+00
Nell'esempio seguente vengono selezionati solo i valori TIMETZ inferiori a 3:00:00 UTC
. Il confronto viene effettuato dopo aver convertito il valore in UTC.
select timetz_val from timetz_test where timetz_val < '3:00:00 UTC'; timetz_val --------------- 00:00:00.5550+00
L'esempio seguente confronta due valori letterali TIMETZ. Il fuso orario viene ignorato per il confronto.
select time '18:25:33.123456 PST' < time '19:25:33.123456 EST'; ?column? ---------- t