Structured Query Language: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
→Operatore LIKE: sistemato OLEDB e migliorata leggibilità caratteri speciali |
|||
Riga 100:
L'operatore <code>LIKE</code> (viene usato anche MATCHES), di solito, è alla base dei criteri di ricerca per parole chiave e delle query effettuate da un motore di ricerca.
Il carattere ''underscore'' ("_"), detto ''wildchar'', esegue la ricerca su un singolo carattere arbitrario; il simbolo <code>"%"</code> è detto operatore jolly ed esegue la ricerca su una stringa arbitraria, ovvero su un intervallo di valori numerici.
Per ricercare il carattere underscore all'interno di un'espressione utilizzare la sintassi <code>"[_]"</code> (leggi anche più avanti).
La sintassi di Microsoft Access è leggermente diversa da questo standard internazionale, e più completa. Invece del simbolo ''underscore'', si utilizza <code>"?"</code> per ricercare un singolo carattere (sia numero che lettera); invece del simbolo <code>"%"</code>, l'operatore jolly è dato da <code>"*"</code>. Access permette di ricercare un singolo valore numerico tramite il tasto ''hash'' (o ''[[cancelletto]]'') (<code>"#"</code>), e di ricercare un carattere (lettera e numero) all'interno o all'esterno di un insieme di valori, con la sintassi <code>"[]"</code> e <code>"[!]"</code>. L'intervallo può essere puntuale o collettivo: ad esempio, [A-F] indica le lettere comprese fra A ed F, mentre [A, F] indica solo la ricerca di queste due lettere. Ad esempio, un'istruzione come 'LIKE P[!A-F]C' ricerca le parole che iniziano per "P", finiscono per "C" e per seconda lettera non hanno i caratteri compresi fra le lettere A e F. Questa completezza nell'implementazione di LIKE è dovuta al fatto che Access non prevede operatori più complessi come SIMILAR TO e REGEXP.
Nonostante questa completezza, il driver OLE DB per Windows ha un bug noto: l'operatore jolly <code>"*"</code> è utilizzabile solo all'interno dell'applicazione, mentre via
▲Nonostante questa completezza, il driver OLE DB per Windows ha un bug noto: l'operatore jolly "*" è utilizzabile solo all'interno dell'applicazione, mentre via OLD DB/ODBC deve essere utilizzato il classico simbolo "%".
===== Operatori SIMILAR TO e REGEXP =====
|