SQL XOR-operatør

Sql Xor Operator



Eksklusiv OR, ofte kjent som XOR, er en av de mest populære og nyttige logiske operatørene i SQL og andre programmeringsspråk. XOR returnerer sann når bare én av de angitte operandene er sann og returnerer usann ellers.

Kort sagt, for to boolske verdier, returnerer XOR-operatoren sann hvis de er forskjellige. Så enkelt er det.

  • sant XOR usant returnerer sant
  • false XOR false returnerer false
  • true XOR true returnerer usant

La oss utforske hva XOR-operatøren i SQL gjør og hvordan vi kan bruke den. For demonstrasjonsformål bruker vi MySQL som basedatabasesystem.







SQL XOR-operatør

I SQL lar XOR-operatoren oss utføre de logiske XOR-operasjonene mellom to boolske uttrykk.



Som enhver XOR-operasjon, returnerer operatøren en boolsk sann hvis nøyaktig ett av uttrykkene er sant, og returnerer en boolsk usann ellers.



MySQL støtter XOR-operatøren som lar oss skrive de komplekse betingelsessetningene basert på denne logikken.





Den grunnleggende syntaksen er som følger:

uttrykk1 XOR uttrykk2

La oss utforske litt grunnleggende bruk av denne funksjonaliteten.



Grunnleggende bruk

Tenk på følgende eksempel som viser hvordan XOR-operatøren oppfører seg i MySQL når den evaluerer to boolske uttrykk:

velg 1 x eller 1 som res;

I dette tilfellet behandler MySQL 1 som sant og 0 som usant. Derfor, siden begge uttrykkene er sanne, returnerer operatøren usann som følger:

res|
---+
0|

Funksjonaliteten til operatøren er bevart når et av uttrykkene eller operandene er sant. Et eksempel er som følger:

velg 1 x eller 0 som res;

I dette tilfellet, siden bare nøyaktig én verdi er sann, returnerer operatøren sann som følger:

res|
---+
1|

Avansert bruk

La oss se på et mer avansert eksempel på bruk av XOR-operatøren ved å bruke en databasetabell. For denne bruker vi 'kunde'-tabellen fra Sakila-eksempeldatabasen.

Anta at vi ønsker å hente en liste over kunder som enten er aktive eller inaktive medlemmer, men ikke begge fra kundetabellen.

I dette tilfellet er den aktive statusen representert med 1 og den ikke-aktive statusen er representert med verdien 0.

Vi kan bruke dette sammen med XOR-operatøren for å oppnå dette. Tenk på følgende eksempelspørring:

SELECT customer_id, first_name, email, active

FRA kunde

HVOR (aktiv XELLER IKKE aktiv) = 1 grense 3;

Dette skal returnere de samsvarende postene som følger:

 Et nærbilde av et navn Beskrivelse generert automatisk

Der har du det!

Konklusjon

I denne opplæringen lærte vi å jobbe med og bruke XOR-operatøren i SQL ved å dekke ulike funksjoner og bruk. Vi har også sett på hvordan vi kan bruke den i en databasetabell for å filtrere etter spesifikke poster.