Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

ความแตกต่างระหว่าง 'AND' และ '&&' ใน MySQL?


หมายเหตุ:มีความแตกต่างเพียงอย่างเดียวระหว่าง AND และ &&คือ AND เป็นมาตรฐานในขณะที่ &&เป็นไวยากรณ์การเป็นเจ้าของ

ยกเว้นข้อความข้างต้น ไม่มีความแตกต่างระหว่าง AND และ &&ให้เราดูเงื่อนไขทั้งหมด

ผลลัพธ์ของ AND และ &&จะเป็น 1 หรือ 0 เสมอ ดังที่เราทราบ AND และ &&ทั้งคู่เป็นตัวดำเนินการเชิงตรรกะ หากมีตัวถูกดำเนินการมากกว่าหนึ่งตัว และตัวถูกดำเนินการตัวใดตัวหนึ่งมีค่า 0 ผลลัพธ์จะกลายเป็น 0 มิฉะนั้น 1

นี่คือตัวอย่างสำหรับ AND และ &&

กรณีที่ 1(a) :ถ้าตัวถูกดำเนินการทั้งสองเป็น 1. การใช้ AND

แบบสอบถามมีดังนี้:

mysql> เลือก 1 และ 1 เป็นผลลัพธ์

ต่อไปนี้เป็นผลลัพธ์:

<ก่อนหน้า>+---------+| ผลลัพธ์ |+-------+| 1 |+--------+1 แถวในชุด (0.00 วินาที)

กรณีที่ 1(b) :ถ้าตัวถูกดำเนินการทั้งสองเป็น 1. การใช้ &&

แบบสอบถามมีดังนี้:

mysql> เลือก 1 &&1 เป็นผลลัพธ์

ต่อไปนี้เป็นผลลัพธ์:

<ก่อนหน้า>+---------+| ผลลัพธ์ |+-------+| 1 |+--------+1 แถวในชุด (0.00 วินาที)

กรณีที่ 2(a) :หากตัวถูกดำเนินการตัวใดตัวหนึ่งเป็น 0 ผลลัพธ์จะกลายเป็น 0 โดยใช้ AND

แบบสอบถามมีดังนี้:

mysql> เลือก 1 และ 0 เป็นผลลัพธ์

ต่อไปนี้เป็นผลลัพธ์:

<ก่อนหน้า>+---------+| ผลลัพธ์ |+-------+| 0 |+--------+1 แถวในชุด (0.00 วินาที)

กรณีที่ 2(b) :หากตัวถูกดำเนินการตัวใดตัวหนึ่งเป็น 0 ผลลัพธ์จะกลายเป็น 0 การใช้ &&

แบบสอบถามมีดังนี้:

mysql> เลือก 1 &&0 เป็นผลลัพธ์

ต่อไปนี้เป็นผลลัพธ์:

<ก่อนหน้า>+---------+| ผลลัพธ์ |+-------+| 0 |+--------+1 แถวในชุด (0.00 วินาที)

นี่คือกรณี NULL

กรณีที่ 3(a): ถ้าตัวถูกดำเนินการตัวใดตัวหนึ่งเป็น NULL ผลลัพธ์จะกลายเป็น NULL การใช้ AND.

แบบสอบถามมีดังนี้:

mysql> เลือก NULL และ 1 เป็นผลลัพธ์

ต่อไปนี้เป็นผลลัพธ์:

<ก่อนหน้า>+---------+| ผลลัพธ์ |+-------+| NULL |+--------+1 แถวในชุด (0.00 วินาที)

กรณีที่ 3(b) :ถ้าตัวถูกดำเนินการตัวใดตัวหนึ่งเป็น NULL ผลลัพธ์จะกลายเป็น NULL การใช้ &&

แบบสอบถามมีดังนี้:

mysql> เลือก NULL &&1 เป็นผลลัพธ์

ต่อไปนี้เป็นผลลัพธ์:

<ก่อนหน้า>+---------+| ผลลัพธ์ |+-------+| NULL |+--------+1 แถวในชุด (0.00 วินาที)

หมายเหตุ:กรณีที่กล่าวถึงข้างต้นไม่ได้ขึ้นอยู่กับ 1 และ 0 เท่านั้น ค่าที่ไม่ใช่ศูนย์จะเป็นจริง ซึ่งหมายความว่าหากเราทำ AND หรือ &&ของจำนวนลบสองตัว ผลลัพธ์จะกลายเป็น 1

ดูกรณีเชิงลบ แบบสอบถามมีดังนี้:

mysql> เลือก -10 และ -30 เป็นผลลัพธ์;+---------+| ผลลัพธ์ |+-------+| 1 |+--------+1 แถวในชุด (0.04 วินาที)mysql> เลือก -10 &&-30 เป็นผลลัพธ์;+-------+| ผลลัพธ์ |+-------+| 1 |+--------+1 แถวในชุด (0.00 วินาที)

ในข้างต้นหากค่าใดค่าหนึ่งเป็น 0 ผลลัพธ์จะกลายเป็น 0 ทั้งใน AND และ &&แบบสอบถามมีดังนี้:

mysql> เลือก -10 และ 0 เป็นผลลัพธ์;+---------+| ผลลัพธ์ |+-------+| 0 |+--------+1 แถวในชุด (0.00 วินาที)

ดูกรณีบวก แบบสอบถามมีดังนี้:

mysql> เลือก 10 และ 30 เป็นผลลัพธ์;+---------+| ผลลัพธ์ |+-------+| 1 |+--------+1 แถวในชุด (0.00 วินาที)mysql> เลือก 10 &&30 เป็นผลลัพธ์;+--------+| ผลลัพธ์ |+-------+| 1 |+--------+1 แถวในชุด (0.00 วินาที)

ในกรณีนี้ ถ้าตัวถูกดำเนินการตัวใดตัวหนึ่งกลายเป็น 0 ผลลัพธ์จะเป็น 0 แบบสอบถามจะเป็นดังนี้:

mysql> เลือก 10 และ 0 เป็นผลลัพธ์;+---------+| ผลลัพธ์ |+-------+| 0 |+--------+1 แถวในชุด (0.00 วินาที)mysql> เลือก 10 &&0 เป็นผลลัพธ์;+--------+| ผลลัพธ์ |+-------+| 0 |+--------+1 แถวในชุด (0.00 วินาที)