sql >> Database >  >> RDS >> Sqlserver

Hoe ALLE logische operatoren in SQL Server te gebruiken - SQL Server / TSQL-zelfstudie, deel 126

ALL Logische operator retourneert TRUE als alle vergelijkingen van een set TRUE zijn. ALL vergelijkt een scalaire waarde met een enkele kolom met waarden.

Laten we ALL begrijpen met voorbeelden.

Scenario:

Denk aan een scenario waarin we twee tabellen dbo.Customer en dbo.Customer1 hebben. Beide tabellen hebben de kolom Leeftijd. Als u alle records uit de dbo.Klanttabel wilt halen, waarbij Leeftijd groter is dan de maximale waarde van de kolom Leeftijd in de tabel dbo.Klant1. Wat zou uw vraag zijn.

Oplossing:

We kunnen de subquery- en max-functie gebruiken om onze query voor bovenstaande vereiste te schrijven. Laten we eerst de tabellen maken.

--Create Customer Table
Create table dbo.Customer
 (Id int,
  FName VARCHAR(50),
  LName VARCHAR(50),
  CountryShortName CHAR(2),
  Age tinyint)
GO
--Insert Rows in dbo.Customer Table
insert into dbo.Customer
Values (
1,'Raza','M','PK',20),
(2,'Rita','John','US',12),
(3,'Sukhi','Singh',Null,25),
(4,'James','Smith','CA',60),
(5,'Robert','Ladson','US',54),
(6,'Alice','John','US',87)

--Create dbo.Customer1 table
Create table dbo.Customer1
 (Id int,
  FName VARCHAR(50),
  LName VARCHAR(50),
  CountryShortName CHAR(2),
  Age tinyint)
GO
--Insert rows in dbo.Customer1 Table
insert into dbo.Customer1
Values
(7,'Raza','M','US',33),
(8,'Dita','M','US',15),
(9,'Adita','M','US',29)
 
1) Haal alle records uit de dbo.Customer-tabel waarin de leeftijd groter is dan de maximale leeftijdswaarde van de dbo.Customer1-tabel met behulp van de subquery en de Max-functie.


2) met ALL met SubQuery
Voor bovenstaande vereiste kunnen we gebruik de logische operator ALL. In dat geval hoeven we de Max-functie niet te gebruiken. ALL gaat onze buitenste querywaarde vergelijken met een reeks waarden uit subquery. We kunnen>Alle gebruiken,>ALL betekent groter dan elke waarde die wordt geretourneerd door subquery, met andere woorden groter dan de maximale waarde.

Select * From dbo.Customer
where Age> All ( Select age from dbo.Customer1)
Alle logische operatoren gebruiken in SQL Server - SQL Server / TSQL-zelfstudie
 

Met ALL kunt u verschillende vergelijkingsoperatoren gebruiken, zoals =, <> , !=,> ,>=, !> , <, <=, !<


Videodemo:Hoe ALLE logische operatoren te gebruiken in SQL / TSQL
  1. Hoofden in de cloud bij CHAR(10)

  2. Hoe MySQL te vermijden 'Deadlock gevonden bij het proberen te vergrendelen; probeer transactie opnieuw te starten'

  3. Ongestructureerde inhoud:een onaangeboorde brandstofbron voor AI en machine learning

  4. Maanden tussen twee datums