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 uttrykk2La 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, activeFRA kunde
HVOR (aktiv XELLER IKKE aktiv) = 1 grense 3;
Dette skal returnere de samsvarende postene som følger:
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.