การดำเนินการทางตรรกะในคำสั่ง SQL ใน PHP
ในเงื่อนไขการเลือกข้อมูล สามารถสร้างการผสมผสานที่ซับซ้อนมากขึ้นได้ด้วยคำสั่ง
OR และ AND
พวกมันทำงานเหมือนกับคู่ของพวกเขาในโครงสร้าง
if ของ PHP
ลองดูตัวอย่างกัน
ตัวอย่าง
มาเลือกผู้ใช้ที่มีเงินเดือน 500 และอายุ
23 ปี:
<?php
$query = "SELECT * FROM users WHERE salary=500 AND age=23";
?>
ตัวอย่าง
มาเลือกผู้ใช้ที่มีเงินเดือน 500 หรือ
อายุ 23 ปี:
<?php
$query = "SELECT * FROM users WHERE salary=500 OR age=23";
?>
ตัวอย่าง
มาเลือกผู้ใช้ที่มีเงินเดือนตั้งแต่ 450
ถึง 900:
<?php
$query = "SELECT * FROM users WHERE salary>450 AND salary<900";
?>
ตัวอย่าง
มาเลือกผู้ใช้ที่มีอายุตั้งแต่ 23 ถึง
27 ปีรวม:
<?php
$query = "SELECT * FROM users WHERE age>=23 AND age<=27";
?>
ตัวอย่าง
การผสมผสานที่ซับซ้อนของคำสั่ง OR และ AND
สามารถจัดกลุ่มด้วยวงเล็บ
เพื่อแสดงลำดับความสำคัญของเงื่อนไข:
<?php
$query = "SELECT * FROM users WHERE (age<20 AND age>27) OR (salary>300 AND salary<500)";
?>
โจทย์ฝึกปฏิบัติ
เลือกผู้ใช้ที่มีอายุตั้งแต่ 25 (ไม่
รวม) ถึง 28 ปี (รวม)
เลือกผู้ใช้ user1
เลือกผู้ใช้ user1 และ user2
เลือกทุกคน ยกเว้นผู้ใช้ user3
เลือกผู้ใช้ทั้งหมดที่มีอายุ 27
ปี หรือมีเงินเดือน 1000
เลือกผู้ใช้ทั้งหมดที่มีอายุ 27
ปี หรือมีเงินเดือนไม่เท่ากับ 400
เลือกผู้ใช้ทั้งหมดที่มีอายุตั้งแต่ 23
ปี (รวม) ถึง 27 ปี (ไม่รวม)
หรือมีเงินเดือน 1000
เลือกผู้ใช้ทั้งหมดที่มีอายุตั้งแต่ 23
ปี ถึง 27 ปี หรือมีเงินเดือนตั้งแต่ 400
ถึง 1000