SQL XOR -operaattori

Sql Xor Operaattori



Exclusive OR, joka tunnetaan yleisesti nimellä XOR, on yksi suosituimmista ja hyödyllisimmistä loogisista operaattoreista SQL:ssä ja muissa ohjelmointikielissä. XOR palauttaa tosi, kun vain yksi annetuista operandeista on tosi, ja palauttaa epätosi muussa tapauksessa.

Lyhyesti sanottuna kahdelle Boolen arvolle XOR-operaattori palauttaa tosi, jos ne ovat erilaisia. Se on niin yksinkertaista.

  • true XOR false palauttaa tosi
  • false XOR false palauttaa false
  • tosi XOR tosi palauttaa false

Tutkitaan mitä XOR-operaattori SQL:ssä tekee ja miten voimme käyttää sitä. Esittelytarkoituksiin käytämme MySQL:ää perustietokantajärjestelmänä.







SQL XOR -operaattori

SQL:ssä XOR-operaattori sallii meidän suorittaa loogiset XOR-operaatiot kahden Boolen lausekkeen välillä.



Kuten mikä tahansa XOR-toiminto, operaattori palauttaa Boolen tosi, jos täsmälleen yksi lausekkeista on tosi, ja palauttaa Boolen epätosi-arvon muussa tapauksessa.



MySQL tukee XOR-operaattoria, jonka avulla voimme kirjoittaa monimutkaisia ​​ehdollisia lauseita tämän logiikan perusteella.





Perussyntaksi on seuraava:

lauseke1 XOR lauseke2

Tarkastellaanpa joitain tämän toiminnon peruskäyttöä.



Peruskäyttö

Tarkastellaan seuraavaa esimerkkiä, joka osoittaa, kuinka XOR-operaattori käyttäytyy MySQL:ssä arvioidessaan kahta Boolen lauseketta:

valitse 1 x tai 1 res;

Tässä tapauksessa MySQL käsittelee 1:tä tosina ja 0:n epätosi. Siksi, koska molemmat lausekkeet ovat tosi, operaattori palauttaa epätosi seuraavasti:

res|
---+
0|

Operaattorin toiminnallisuus säilyy, kun jokin lausekkeista tai operandi on tosi. Esimerkki on seuraava:

valitse 1 x tai 0 res;

Tässä tapauksessa, koska vain yksi arvo on tosi, operaattori palauttaa tosi seuraavasti:

res|
---+
1|

Kehittynyt käyttö

Katsotaanpa edistyneempää esimerkkiä XOR-operaattorin käytöstä tietokantataulukon avulla. Tätä varten käytämme Sakilan näytetietokannan “asiakas”-taulukkoa.

Oletetaan, että haluamme hakea asiakastaulukosta luettelon asiakkaista, jotka ovat joko aktiivisia tai ei-aktiivisia jäseniä, mutta eivät molempia.

Tässä tapauksessa aktiivista tilaa edustaa 1 ja ei-aktiivista tilaa 0.

Voimme käyttää tätä yhdessä XOR-operaattorin kanssa tämän saavuttamiseksi. Harkitse seuraavaa esimerkkikyselyä:

SELECT asiakastunnus, etunimi, sähköpostiosoite, aktiivinen

Asiakkaalta

WHERE (aktiivinen XOR EI aktiivinen) = 1 raja 3;

Tämän pitäisi palauttaa vastaavat tietueet seuraavasti:

 Lähikuva nimestä Kuvaus luodaan automaattisesti

Siinä se on!

Johtopäätös

Tässä opetusohjelmassa opimme työskentelemään XOR-operaattorin kanssa ja käyttämään sitä SQL:ssä kattamalla erilaisia ​​toimintoja ja käyttöä. Tarkastelimme myös, kuinka voimme käyttää sitä tietokantataulukossa tiettyjen tietueiden suodattamiseen.