SQL Server: Come fare ricerche CASE SENSITIVE
L'articolo di ieri รจ stato sicuramente intenso (Database corrotti, recupero tramite DBCC WRITEPAGES) per cui oggi sarรฒ molto piรน breve. Promesso!
Vi farรฒ vedere come eseguire una ricerca case sentitive anche se la collate impostata sul database non lo รจ.
Ricerche case sensitive
Supponiamo ora di avere una tabella "elenco" dentro la quale sono memorizzati una serie di nomi, come questa sotto:
Ora, il nostro database non รจ case sensitive per cui una interrogazione come questa:
SELECT * FROM ELENCO WHERE CODICE = 'LUCA'
ritornerร sempre entrambi i record.
Ma se volessimo restituito solamente il codice dove LUCA รจ scritto solo in minuscolo?
Come fare?
Bhe, il trucco รจ semplice.
Avete presente quando abbiamo parlato nei giorni scorsi di COLLATE? (fai click qui:Errore Messaggio 468: Non รจ possibile risolvere il conflitto tra le regole di confronto "AAAA" e "BBBB" nell'operazione equal to. )
Avevamo accennato al fatto che รจ la COLLATE a stabilire se la nostra colonna รจ CASE SENSITIVE oppure no.
Ecco il trucco รจ proprio questo:
Nella WHERE che andremo a scrivere andremo a specificare una COLLATE che sia CASE SENSITIVE.
Scriviamo ad esempio:
SELECT * FROM ELENCO WHERE CODICE COLLATE SQL_Latin1_General_CP1_CS_AS = 'luca'
Eseguitela ed ecco il risultato..
Per oggi รจ tutto, ci vediamo presto..
P.S. Buon ferragosto!

Comments
Post a Comment