O que é LIKE Operador lógico:
O operador lógico LIKE é usado quando queremos retornar a linha se o operando corresponder a um padrão. O operador like retorna TRUE se o operando corresponder a um padrão.Algumas vezes precisamos realizar a correspondência de padrões em vez de igual ou diferente. Like é usado quando queremos retornar a linha se a string de caracteres específica corresponder a um padrão especificado. O padrão pode ser uma combinação de caracteres regulares e caracteres curinga.
Para retornar a linha, os caracteres regulares devem corresponder exatamente aos caracteres especificados na sequência de caracteres. Os caracteres curinga podem ser combinados com partes arbitrárias da sequência de caracteres.
Vamos criar a tabela dbo.Customer e depois criar alguns exemplos em tempo real
Create table dbo.Customer (Id int, FName VARCHAR(50), LName VARCHAR(50), CountryShortName CHAR(2)) GO insert into dbo.Customer Values ( 1,'Raza','M','PK'), (2,'Rita','John','US'), (3,'Sukhi','Singh',Null), (4,'James','Smith','CA'), (5,'Robert','Ladson','US'), (6,'Alice','John','US'), (7,'Raza','M','US'),
(8,'Dita','M','US'),(9,'Adita','M','US')
1) Usando %
Digamos que queremos encontrar todas as linhas onde FName contém "i" nelas. Podemos usar a consulta abaixo
Select * From dbo.Customer where FName like '%i%'
Como usar % com o operador Like no SQL Server - Tutorial SQL Server / TSQL |
Percebi que ao usar % antes e depois de "i", estamos dizendo à consulta para encontrar todas as linhas em que FName tem o caractere "i" e não importa quais outros caracteres estejam antes e depois de "i".
2) Usando _ (sublinhado)
O sublinhado pode ser usado quando queremos verificar um único caractere que pode ser qualquer coisa e fornecer o restante dos caracteres para nossa correspondência. Digamos que, se eu quiser encontrar todas as linhas em que o primeiro caractere FName pode ser qualquer coisa, mas o restante delas deve ser "ita". Posso usar a consulta abaixo.
Select * From dbo.Customer where FName like '_ita'
Como usar sublinhado( _ ) com o operador Like no SQL Server - Tutorial SQL Server / TSQL |
3) Usando [ ] - Qualquer caractere único dentro do rang [a-t] especificado ou conjunto [abc]
O operador like com [ ] pode ser usado quando queremos ter alcance. Digamos que eu queira encontrar todas as linhas em que o primeiro caractere FName comece com [a-f]. Podemos usar a consulta abaixo.
Select * From dbo.Customer where FName like '[a-f]%'
Como usar o operador Rang with Like no SQL Server para pesquisa - Tutorial do SQL Server / TSQL |
Como você pode ver que eu usei [a-f]%. Isso significa que eu quero o primeiro caractere de a a f e depois disso todos os caracteres estão bem como eu usei %.
4) [^] Qualquer caractere único NÃO dentro do intervalo especificado [a-t] ou defina [abc]
Digamos que eu queira encontrar todas as linhas onde FName primeiro caractere NÃO começa com [a a f]. Podemos usar a consulta abaixo.
Selecione * From dbo.Customer
where FName like '[^a-f]%'
Como usar Not in Range com Like Operator no SQL Server - Tutorial SQL Server / TSQL |
Percebi que ele apenas nos retornou as linhas que não começam com nenhum caractere de a-f.
Digamos que se queremos obter todas as linhas onde FName não comece com a,d,j. podemos usar a consulta abaixo.
Selecione * From dbo.Customer
where FName like '[^adj]%'
Demonstração em vídeo:como usar o operador lógico semelhante no SQL Server