SQL - Operatori congiuntivi AND e OR
L'SQL AND & ORgli operatori vengono utilizzati per combinare più condizioni per restringere i dati in un'istruzione SQL. Questi due operatori sono chiamati come operatori congiuntivi.
Questi operatori forniscono un mezzo per effettuare confronti multipli con diversi operatori nella stessa istruzione SQL.
L'operatore AND
Il AND L'operatore consente l'esistenza di più condizioni nella clausola WHERE di un'istruzione SQL.
Sintassi
La sintassi di base dell'operatore AND con una clausola WHERE è la seguente:
SELECT column1, column2, columnN
FROM table_name
WHERE [condition1] AND [condition2]...AND [conditionN];
È possibile combinare un numero N di condizioni utilizzando l'operatore AND. Affinché un'azione venga eseguita dall'istruzione SQL, sia che si tratti di una transazione o di una query, tutte le condizioni separate da AND devono essere TRUE.
Esempio
Considera la tabella CLIENTI con i seguenti record:
+----+----------+-----+-----------+----------+
| ID | NAME | AGE | ADDRESS | SALARY |
+----+----------+-----+-----------+----------+
| 1 | Ramesh | 32 | Ahmedabad | 2000.00 |
| 2 | Khilan | 25 | Delhi | 1500.00 |
| 3 | kaushik | 23 | Kota | 2000.00 |
| 4 | Chaitali | 25 | Mumbai | 6500.00 |
| 5 | Hardik | 27 | Bhopal | 8500.00 |
| 6 | Komal | 22 | MP | 4500.00 |
| 7 | Muffy | 24 | Indore | 10000.00 |
+----+----------+-----+-----------+----------+
Di seguito è riportato un esempio, che recupererebbe i campi ID, Nome e Salario dalla tabella CLIENTI, dove lo stipendio è maggiore di 2000 e l'età è inferiore a 25 anni -
SQL> SELECT ID, NAME, SALARY
FROM CUSTOMERS
WHERE SALARY > 2000 AND age < 25;
Ciò produrrebbe il seguente risultato:
+----+-------+----------+
| ID | NAME | SALARY |
+----+-------+----------+
| 6 | Komal | 4500.00 |
| 7 | Muffy | 10000.00 |
+----+-------+----------+
L'operatore OR
L'operatore OR viene utilizzato per combinare più condizioni nella clausola WHERE di un'istruzione SQL.
Sintassi
La sintassi di base dell'operatore OR con una clausola WHERE è la seguente:
SELECT column1, column2, columnN
FROM table_name
WHERE [condition1] OR [condition2]...OR [conditionN]
È possibile combinare N numero di condizioni utilizzando l'operatore OR. Affinché un'azione possa essere eseguita dall'istruzione SQL, sia che si tratti di una transazione o di una query, l'unica qualsiasi delle condizioni separate da OR deve essere TRUE.
Esempio
Considera la tabella CLIENTI con i seguenti record:
+----+----------+-----+-----------+----------+
| ID | NAME | AGE | ADDRESS | SALARY |
+----+----------+-----+-----------+----------+
| 1 | Ramesh | 32 | Ahmedabad | 2000.00 |
| 2 | Khilan | 25 | Delhi | 1500.00 |
| 3 | kaushik | 23 | Kota | 2000.00 |
| 4 | Chaitali | 25 | Mumbai | 6500.00 |
| 5 | Hardik | 27 | Bhopal | 8500.00 |
| 6 | Komal | 22 | MP | 4500.00 |
| 7 | Muffy | 24 | Indore | 10000.00 |
+----+----------+-----+-----------+----------+
Il seguente blocco di codice ha una query, che recupera i campi ID, Nome e Salario dalla tabella CUSTOMERS, dove lo stipendio è maggiore di 2000 OPPURE l'età è inferiore a 25 anni.
SQL> SELECT ID, NAME, SALARY
FROM CUSTOMERS
WHERE SALARY > 2000 OR age < 25;
Ciò produrrebbe il seguente risultato:
+----+----------+----------+
| ID | NAME | SALARY |
+----+----------+----------+
| 3 | kaushik | 2000.00 |
| 4 | Chaitali | 6500.00 |
| 5 | Hardik | 8500.00 |
| 6 | Komal | 4500.00 |
| 7 | Muffy | 10000.00 |
+----+----------+----------+