Filtra in SQL utilizzando IN, NOT IN, LIKE e NOT LIKE

Filtra in SQL utilizzando IN, NOT IN, LIKE e NOT LIKE

In questo blog, discuteremo come filtrare in SQL. Spiegheremo e mostreremo alcuni esempi che utilizzano condizioni di filtraggio come IN, NOT IN, LIKE e NOT LIKE .

Queste condizioni di filtro vengono utilizzate per filtrare l'output dai dati. Invece di selezionarli utilizzando più righe di comandi, sarà più facile per te accedere ai dati.

Sommario

Utilizzo degli operatori IN e NOT IN per filtrare i dati in SQL

In questo esempio, otterremo i dati dagli ID 1, 5 o 7. La maggior parte delle persone utilizzerà le condizioni OR .

Filtra in SQL utilizzando IN, NOT IN, LIKE e NOT LIKE

Se desideri ottenere i dati da più ID, dovrai scrivere più condizioni OR. Tuttavia, è possibile utilizzare l' operatore IN per ottenere i dati desiderati invece di utilizzare molte volte le condizioni OR .

Filtra in SQL utilizzando IN, NOT IN, LIKE e NOT LIKE

L'utilizzo di questa condizione di filtro ci darà lo stesso output, ovvero i dati dagli ID 1, 5 o 7. Al contrario, se desideri estrarre i dati da tutti tranne dagli ID 1, 5 e 7, dovresti probabilmente usa la condizione OR e <> (operatore NON EQUAL).

Filtra in SQL utilizzando IN, NOT IN, LIKE e NOT LIKE

Invece di scrivere lunghi comandi, possiamo usare l' operatore NOT IN .

Filtra in SQL utilizzando IN, NOT IN, LIKE e NOT LIKE

Con questa condizione di filtro, estrai i dati ad eccezione degli ID 1, 5 e 7.

L'utilizzo di queste condizioni ti farà risparmiare un sacco di tempo e, allo stesso tempo, è un modo molto migliore per scrivere invece di utilizzare più condizioni OR .

Utilizzo degli operatori LIKE e NOT LIKE per filtrare i dati in SQL

LIKE e NOT LIKE sono simili agli operatori IN e NOT IN. Invece di estrarre i dati stessi, otterrà la parte di una stringa. Tieni presente che puoi utilizzare caratteri jolly o caratteri speciali come percentuale (%) e trattino basso (_).

% significa che corrisponderà a tutti i record con la stringa data . Se combiniamo 86 e %, le prime due cifre dovrebbero essere 86. Quindi, troverà tutti i valori che iniziano con 86.

Ma se posizioniamo % su entrambi i lati di 86, può provenire da qualsiasi posizione. Può venire dall'inizio, dalla fine o dalla metà. Quindi, troverà tutti i valori che hanno 86 all'inizio, al centro o alla fine. 

D'altra parte, _ corrisponde a un solo carattere. Se usi 86 e _ (86_), cercherà tutti i valori che hanno 86 nella prima e nella seconda posizione come 860, 861, 862 e così via. Se usi _ e 86 (_86), cercherà qualsiasi valore con 86 nella 2a e 3a posizione. 

Filtra in SQL utilizzando IN, NOT IN, LIKE e NOT LIKE

In questo esempio, utilizzeremo l' operatore LIKE per ottenere i dati che hanno la stringa Mark . Abbiamo semplicemente bisogno di mettere Mark tra % per avere un output che contenga Mark

Filtra in SQL utilizzando IN, NOT IN, LIKE e NOT LIKE

Allo stesso modo, se non vogliamo estrarre i dati che contengono Mark , possiamo utilizzare l' operatore NOT LIKE . Quindi metti Mark tra %.

Filtra in SQL utilizzando IN, NOT IN, LIKE e NOT LIKE

Questa volta, l'output non conterrà Mark .

Utilizzo delle condizioni di filtro SQL in SSMS

Innanzitutto, apriremo il nostro SSMS (SQL Server Management Studio).

Filtra in SQL utilizzando IN, NOT IN, LIKE e NOT LIKE

Successivamente, caricheremo la tabella che useremo. Tieni presente che il database che stiamo utilizzando è adventureworks2012, che può essere trovato sul sito Web della documentazione Microsoft .

Filtra in SQL utilizzando IN, NOT IN, LIKE e NOT LIKE

Quindi, fai clic su Esegui .

Filtra in SQL utilizzando IN, NOT IN, LIKE e NOT LIKE

Successivamente, vedrai l'output nella scheda Risultati.

Filtra in SQL utilizzando IN, NOT IN, LIKE e NOT LIKE

Quindi, filtreremo l'output in base a PersonType . Useremo il comando select distinto . Evidenzieremo il comando e faremo clic su Execute .

Filtra in SQL utilizzando IN, NOT IN, LIKE e NOT LIKE

Quindi vedrai l'output che mostra PersonType .

Filtra in SQL utilizzando IN, NOT IN, LIKE e NOT LIKE

Successivamente, estraiamo i record da PersonType IN , o SP o SC . Per questo, useremo la condizione OR . Evidenzieremo il comando e faremo clic su esegui .

Filtra in SQL utilizzando IN, NOT IN, LIKE e NOT LIKE

Vedrai quindi che il numero di righe è 19.254.

Filtra in SQL utilizzando IN, NOT IN, LIKE e NOT LIKE

Tuttavia, invece di utilizzare la condizione OR , utilizzeremo l' operatore IN . Quindi, digiteremo il comando e lo evidenzieremo. Quindi fare clic su Esegui .

Filtra in SQL utilizzando IN, NOT IN, LIKE e NOT LIKE

Questo ci darà lo stesso numero di righe, ovvero 19.254 .

Filtra in SQL utilizzando IN, NOT IN, LIKE e NOT LIKE

Se vogliamo estrarre tutti i dati tranne IN , SP e SC , utilizzeremo l' operatore NOT IN . Quindi digitiamo il comando ed evidenziamolo. Quindi fare clic su Esegui .

Filtra in SQL utilizzando IN, NOT IN, LIKE e NOT LIKE

Questo ci darà tutti i dati tranne quelli che provengono da IN , SP e SC .

Filtra in SQL utilizzando IN, NOT IN, LIKE e NOT LIKE

Successivamente, utilizzeremo l' operatore LIKE per estrarre i dati che contengono Rob dalla colonna FirstName . Usiamo il comando, lo evidenziamo e facciamo clic su Execute .

Filtra in SQL utilizzando IN, NOT IN, LIKE e NOT LIKE

Come risultato, vedremo che l'output ora contiene Rob nella colonna FirstName . Poiché abbiamo utilizzato %, mostrerà tutti i dati che hanno la stringa Rob .

Filtra in SQL utilizzando IN, NOT IN, LIKE e NOT LIKE

Infine, utilizzeremo l' operatore NOT LIKE . In questo esempio, vogliamo estrarre i dati che non contengono Rob . Quindi digiteremo il codice, lo evidenzieremo e quindi faremo clic su Esegui.

Filtra in SQL utilizzando IN, NOT IN, LIKE e NOT LIKE

Questo ci darà l'output che non mostra alcun record che contiene Rob nella colonna FirstName .

Filtra in SQL utilizzando IN, NOT IN, LIKE e NOT LIKE

Conclusione

Per riassumere, abbiamo discusso su come filtrare in SQL utilizzando gli operatori IN, NOT IN, LIKE e NOT LIKE. Hai imparato il loro utilizzo e le loro differenze e in quale situazione puoi usarli.

Questi operatori sono più efficienti rispetto all'utilizzo della condizione OR . Puoi utilizzare questi operatori per filtrare ed estrarre i dati desiderati dal tuo database invece di utilizzare comandi più lunghi, quindi assicurati di utilizzare correttamente queste condizioni di filtro.

Ti auguro il meglio,

Hafiz


Power Automate si applica a ogni azione nei flussi di lavoro

Power Automate si applica a ogni azione nei flussi di lavoro

Scopri l

Tecniche di modellazione dei dati per organizzare le misure DAX

Tecniche di modellazione dei dati per organizzare le misure DAX

Tecniche di modellazione dei dati per organizzare meglio le misure DAX per un flusso di lavoro più efficiente.

Filtro Power Apps: cosè e come si usa?

Filtro Power Apps: cosè e come si usa?

Scopri come utilizzare la funzione di filtro in Power Apps e come incorporarla nelle formule esistenti all

Come commentare più righe in Python: una guida semplice e veloce

Come commentare più righe in Python: una guida semplice e veloce

Come commentare più righe in Python: una guida semplice e veloce

Connettori Power Automate: numero, testo e data e ora

Connettori Power Automate: numero, testo e data e ora

Acquisisci familiarità con i connettori Power Automate per la manipolazione di numeri, testo e date/ore.

Budget Vs Actual Vs Last Year - Suggerimenti per la rendicontazione finanziaria

Budget Vs Actual Vs Last Year - Suggerimenti per la rendicontazione finanziaria

Ora, è molto facile studiare il budget rispetto all

Come salvare e caricare un file RDS in R

Come salvare e caricare un file RDS in R

Imparerai come salvare e caricare oggetti da un file .rds in R. Questo articolo tratta anche come importare oggetti da R a LuckyTemplates.

Che cosè Power Query e M Language: una panoramica dettagliata

Che cosè Power Query e M Language: una panoramica dettagliata

Scopri tutto su Power Query e il linguaggio M per la trasformazione e la preparazione dei dati nel desktop di LuckyTemplates.

Cosè il sé in Python: esempi del mondo reale

Cosè il sé in Python: esempi del mondo reale

Cos'è il sé in Python: esempi del mondo reale

Rivisitazione dei primi N giorni lavorativi: una soluzione per il linguaggio di codifica DAX

Rivisitazione dei primi N giorni lavorativi: una soluzione per il linguaggio di codifica DAX

In questa esercitazione sul linguaggio di codifica DAX, scopri come usare la funzione GENERATE e come modificare dinamicamente il titolo di una misura.