sql >> Database teknologi >  >> RDS >> Sqlserver

Hvad er LIKE Logical Operator i SQL Server - SQL Server / TSQL Tutorial Del 123

Hvad er LIKE Logical Operator:

LIKE logisk operator bruges, når vi ønsker at returnere rækken, hvis operand matcher et mønster. Ligesom-operator returnerer TRUE, hvis operanden matcher et mønster.


Nogle gange er vi nødt til at udføre mønstermatchning i stedet for lig med eller ikke lig. Like bruges, når vi ønsker at returnere rækken, hvis specifik tegnstreng matcher et specificeret mønster. Mønster kan være en kombination af almindelige tegn og jokertegn.
For at returnere rækken tilbage skal almindelige tegn nøjagtigt matche de tegn, der er angivet i tegnstrengen. Jokertegnene kan matches med vilkårlige dele af tegnstrengen.

Lad os oprette dbo.Customer-tabel og derefter oprette nogle eksempler i realtid

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) Brug af %
Lad os sige, om vi vil finde alle rækkerne, hvor FName indeholder "i" i dem. Vi kan bruge nedenstående forespørgsel

Select * From dbo.Customer
where FName like '%i%'
 
Sådan bruger du % med Like Operator i SQL Server - SQL Server / TSQL Tutorial
 












Bemærket, at ved at bruge % før og efter "i", beder vi forespørgslen finde alle rækker, hvor FName har "i"-tegn og er ligegyldigt, hvilke andre tegn der er før og efter "i".


2) Brug af _ (understregning)
Understregningen kan bruges, når vi vil kontrollere et enkelt tegn, der kan være hvad som helst, og give resten af ​​tegnene til vores match. Lad os sige, at hvis jeg vil finde alle rækker, hvor FName første tegn kan være alt, men resten af ​​dem skal være "ita". Jeg kan bruge nedenstående forespørgsel.

Select * From dbo.Customer
where FName like '_ita'
Sådan bruger du understregning( _ ) med Like Operator i SQL Server - SQL Server / TSQL Tutorial
 3) Brug af [ ] - Ethvert enkelt tegn inden for det angivne ringetone [a-t] eller sæt [abc] 
Ligesom operator med [ ] kan bruges, når vi ønsker at have rækkevidde. Lad os sige, om jeg vil finde alle rækkerne, hvor FName første tegn starter med [a-f]. Vi kan bruge nedenstående forespørgsel.

Select * From dbo.Customer
where FName like '[a-f]%'
 
Sådan bruges Rang with Like-operatoren i SQL Server til søgning - SQL Server / TSQL Tutorial
 Som du kan se, har jeg brugt [a-f]%. Det betyder, at jeg vil have det første tegn fra a til f, og derefter er alle tegn i orden, da jeg brugte %.

4) [^] Ethvert enkelt tegn IKKE inden for den angivne rang [a-t] eller indstil [abc]
Lad os sige, at hvis jeg vil finde alle rækkerne, hvor FName første tegn IKKE starter med [a til f]. Vi kan bruge nedenstående forespørgsel.

Vælg * Fra dbo.Customer
where FName like '[^a-f]%'
 
Sådan bruges Not in Range med Like Operator i SQL Server - SQL Server / TSQL Tutorial
 
Bemærket, at det kun gav os de rækker, som ikke starter med et tegn fra a-f.


Lad os sige, at hvis vi ønsker at få alle de rækker, hvor FName ikke start med a,d,j. vi kan bruge nedenstående forespørgsel.

Vælg * Fra dbo.Customer
where FName like '[^adj]%'
 

Videodemo :Sådan bruger du Logical Like Operator i SQL Server
 

  1. java.lang.NoSuchFieldError:NONE i dvale med Spring 3, maven, JPA, c3p0

  2. Hvad er sql-forbindelsesstrengen, jeg skal bruge for at få adgang til localhost\SQLEXPRESS med Windows-godkendelse eller SQL-godkendelse?

  3. Hvad er størrelsesgrænsen for et varchar2 PL/SQL-underprogramargument i Oracle?

  4. Sådan udtrækkes en understreng fra en streng i T-SQL