Problema:
Desideri selezionare le righe che contengono una stringa che inizia con uno di un determinato gruppo di caratteri.
Esempio:
Il nostro database ha una tabella chiamata gamer
con i dati nel id
e user
colonne.
id | utente |
---|---|
1 | superuomo |
2 | magnus |
3 | lucy |
4 | stan |
5 | al |
Troviamo tutti i dati per i giocatori i cui nomi utente iniziano con "a", "b", "r" o "s".
Soluzione:
SELECT id, user FROM gamer WHERE user LIKE '[abrs]%';
Ecco il risultato:
id | utente |
---|---|
1 | superuomo |
4 | stan |
5 | al |
Discussione:
Se si desidera filtrare le righe contenenti una stringa che corrisponde a un determinato modello, utilizzare la clausola WHERE con l'operatore LIKE. La clausola WHERE viene utilizzata per filtrare i record che soddisfano le condizioni indicate. Dopo WHERE, aggiungi un nome di colonna o un'espressione, seguito dall'operatore (ad es. LIKE) e dai valori di confronto. Dopo LIKE, inserisci il pattern da abbinare (nel nostro esempio, WHERE user LIKE '[abrs]%'
). Il modello può contenere caratteri e caratteri jolly.
Uno dei caratteri jolly di T-SQL è '%', che rappresenta zero o più caratteri sconosciuti. Il carattere jolly di sottolineatura ( _ ) indica un carattere. Le parentesi ( [] ) racchiudono il modello da abbinare; questo modello può contenere una o più lettere o numeri. La stringa di destinazione può corrispondere a uno o più caratteri tra parentesi.
Nel nostro esempio, il modello '[abrs]%'
denota che il nome utente deve iniziare con a, b, r o s. Dopo il carattere iniziale, possono esserci zero o più caratteri perché abbiamo utilizzato il carattere jolly %.
Gli utenti con id=2 e id=3 non vengono visualizzati; i loro nomi iniziano con 'l' e 'm' e quindi non corrispondono allo schema che abbiamo selezionato.