ตัวดำเนินการ SQL XOR

Taw Danein Kar Sql Xor



Exclusive OR หรือที่รู้จักกันทั่วไปในชื่อ XOR เป็นหนึ่งในตัวดำเนินการเชิงตรรกะที่ได้รับความนิยมและมีประโยชน์มากที่สุดใน SQL และภาษาการเขียนโปรแกรมอื่นๆ XOR คืนค่าเป็นจริงเมื่อมีตัวถูกดำเนินการที่ระบุเพียงตัวเดียวเท่านั้นที่เป็นจริง และส่งคืนค่าเท็จหากอย่างอื่น

กล่าวโดยย่อคือ สำหรับค่าบูลีนสองค่า ตัวดำเนินการ XOR จะคืนค่าเป็นจริงหากค่าต่างกัน มันง่ายมาก

  • XOR จริง ส่งกลับเท็จ จริง
  • เท็จ
  • จริง XOR จริงส่งคืนเท็จ

เรามาสำรวจว่าตัวดำเนินการ XOR ใน SQL ทำอะไรได้บ้าง และเราจะใช้งานมันได้อย่างไร เพื่อจุดประสงค์ในการสาธิต เราใช้ MySQL เป็นระบบฐานข้อมูลพื้นฐาน







ตัวดำเนินการ SQL XOR

ใน SQL ตัวดำเนินการ XOR ช่วยให้เราสามารถดำเนินการ XOR แบบลอจิคัลระหว่างสองนิพจน์บูลีนได้



เช่นเดียวกับการดำเนินการ XOR ใดๆ ตัวดำเนินการจะคืนค่าบูลีนจริง หากนิพจน์ใดนิพจน์หนึ่งเป็นจริง และส่งคืนค่าบูลีนเป็นเท็จ หากไม่เป็นเช่นนั้น



MySQL รองรับตัวดำเนินการ XOR ซึ่งช่วยให้เราสามารถเขียนคำสั่งเงื่อนไขที่ซับซ้อนตามตรรกะนี้





ไวยากรณ์พื้นฐานมีดังนี้:

นิพจน์ 1 XOR นิพจน์ 2

ให้เราสำรวจการใช้งานพื้นฐานของฟังก์ชันนี้



การใช้งานขั้นพื้นฐาน

พิจารณาตัวอย่างต่อไปนี้ที่แสดงให้เห็นว่าตัวดำเนินการ XOR ทำงานอย่างไรใน MySQL เมื่อประเมินนิพจน์บูลีนสองนิพจน์:

เลือก 1 x หรือ 1 เป็นความละเอียด;

ในกรณีนี้ MySQL ถือว่า 1 เป็นจริงและ 0 เป็นเท็จ ดังนั้น เนื่องจากทั้งสองนิพจน์เป็นจริง ตัวดำเนินการจึงคืนค่าเท็จดังนี้

ความละเอียด|
---+
0|

ฟังก์ชันการทำงานของตัวดำเนินการจะยังคงอยู่เมื่อหนึ่งในนิพจน์หรือตัวถูกดำเนินการเป็นจริง ตัวอย่างมีดังนี้:

เลือก 1 x หรือ 0 เป็นความละเอียด;

ในกรณีนี้ เนื่องจากมีเพียงค่าเดียวเท่านั้นที่เป็นจริง ตัวดำเนินการจึงคืนค่าจริงดังนี้:

ความละเอียด|
---+
1|

การใช้งานขั้นสูง

ให้เราดูตัวอย่างการใช้งานขั้นสูงของตัวดำเนินการ XOR โดยใช้ตารางฐานข้อมูล สำหรับอันนี้ เราใช้ตาราง “ลูกค้า” จากฐานข้อมูลตัวอย่าง Sakila

สมมติว่าเราต้องการดึงรายชื่อลูกค้าที่เป็นสมาชิกที่ใช้งานอยู่หรือไม่ได้ใช้งาน แต่ไม่ใช่ทั้งคู่จากตารางลูกค้า

ในกรณีนี้ สถานะใช้งานอยู่จะแสดงด้วย 1 และสถานะไม่ทำงานแสดงด้วยค่า 0

เราสามารถใช้สิ่งนี้ร่วมกับตัวดำเนินการ XOR เพื่อให้บรรลุเป้าหมายนี้ได้ พิจารณาแบบสอบถามตัวอย่างต่อไปนี้:

เลือก customer_id, first_name, อีเมล, ใช้งานอยู่

จากลูกค้า

โดยที่ (XOR ที่ใช้งานอยู่ ไม่ทำงาน) = 1 ขีดจำกัด 3;

สิ่งนี้ควรส่งคืนบันทึกที่ตรงกันดังนี้:

 ภาพระยะใกล้ของคำอธิบายชื่อที่สร้างขึ้นโดยอัตโนมัติ

ได้แล้ว!

บทสรุป

ในบทช่วยสอนนี้ เราได้เรียนรู้วิธีการทำงานและใช้ตัวดำเนินการ XOR ใน SQL โดยครอบคลุมฟังก์ชันและการใช้งานต่างๆ นอกจากนี้เรายังดูวิธีที่เราสามารถนำมาใช้ในตารางฐานข้อมูลเพื่อกรองบันทึกเฉพาะได้อีกด้วย