Operatori e tipi di dato
Come un qualsiasi linguaggio di programmazione anche l'SQL utilizza una serie di simboli atti a definire uguaglianze, a fare confronti e calcoli; a pro di questo esistono gli operatori e si fa riferimento ai tipi di dato che può assumere un campo. In questo capitolo affronteremo questi argomenti.
Iniziamo a definire gli operatori messi a disposizione dagli standard dell'SQL. Gli operatori si dividono in quattro categorie:
- Operatori di confronto
- Operatori aritmetici
- Operatori condizionali
- Operatori logici
| Operatore | Descrizione |
| = | Esprime uguaglianza tra due valori |
| LIKE | Esprime somiglianza tra due valori |
| < | Stabilisce che un valore è minore di un altro |
| > | Stabilisce che un valore è maggiore di un altro |
| <= | Stabilisce che un valore è minore o uguale di un altro |
| >= | Stabilisce che un valore è maggiore o uguale di un altro |
| <> | Stabilisce che due valori sono diversi tra loro |
| BETWEEN | Recupera un valore compreso tra due valori |
Gli operatori aritmetici effettuano calcoli all'interno di una ricerca. Di seguito uno schema tabellare:
| Operatore | Descrizione |
| + | Effettua un'addizione |
| - | Effettua una sottrazione |
| * | Effettua una moltiplicazione |
| / | Effettua una divisione |
L'unico operatore condizionale di SQL è WHERE (DOVE) e serve a definire criteri di ricerca mirati. Nei prossimi capitoli lo vedremo spesso in azione.
Gli operatori logici di SQL sono AND (E) e OR (O, OPPURE) e servono rispettivamente ad indicare alla ricerca di restituire dati in cui due valori devono rispettivamente: essere entrambi trovati oppure uno solo dei due (o più) valori devono essere trovati. Anche in questo caso vedremo esempi chiarificatori nei prossimi capitoli.
Passiamo ai tipi di dato. Dovendo utilizzare Access per l'implementazione degli esempi, passeremo i tipi da dato, e la nomenclatura esatta, messi a disposizione da Access per l'SQL:
| Tipo | Access | Descrizione |
| AutoIncrement | Contatore | Si incrementa automaticamente di una unità quando viene aggiunto un record e non rigenera mai un numero quando un record viene cancellato |
| Text | Testo | Testuale, accetta fino a 255 caratteri |
| Memo | Memo | Testuale, accetta diverse migliaia di caratteri ed occupa più memoria rispetto al precedente |
| Integer | Numerico | Accetta numeri interi |
| Float | Numerico | Accetta numeri a precisione singola |
| Double | Numerico | Accetta numeri a precisione doppia |
| Byte | Numerico | Accetta numeri interi ma occupa meno memoria di un Integer |
| Currency | Valuta | Formatta un numero nel formato della valuta selezionata (£, €, $, ecc...) |
| DateTime | Data/ora | Imposta vari formata (numerici e/o alfanumerici) per la data e l'ora |
| Bit | Si/No | Booleano, restituisce True o False |







