การดึงข้อมูลจากฐานข้อมูลด้วยคำสั่ง SQL ใน PHP
ในโค้ดทดสอบ คุณได้เห็นคำสั่ง SELECT
ซึ่งใช้สำหรับดึงข้อมูลจากฐานข้อมูลมาแล้ว คราวนี้
ลองมาศึกษารายละเอียดของไวยากรณ์กันมากขึ้น
นี่คือไวยากรณ์:
<?php
$query = "SELECT * FROM table WHERE condition";
?>
อย่างที่คุณเห็น หลังจากชื่อตาราง คุณสามารถ
เพิ่มคำสั่ง WHERE เข้าไปได้ โดยภายในคำสั่งนี้
คุณสามารถเขียนเงื่อนไขสำหรับการเลือกรายการได้
ในเงื่อนไขอนุญาตให้ใช้ตัวดำเนินการเปรียบเทียบดังต่อไปนี้:
=, !=, <>, <,
>, <=, >=.
ลองดูการนำไปใช้ผ่านตัวอย่างกัน
ตัวอย่าง
เลือกผู้ใช้ที่มี id เท่ากับ 2:
<?php
$query = "SELECT * FROM users WHERE id=2";
?>
ตัวอย่าง
เลือกผู้ใช้ที่มี id มากกว่า 2:
<?php
$query = "SELECT * FROM users WHERE id>2";
?>
ตัวอย่าง
เลือกผู้ใช้ที่มี id มากกว่าหรือเท่ากับ
2:
<?php
$query = "SELECT * FROM users WHERE id>=2";
?>
ตัวอย่าง
เลือกผู้ใช้ที่มี id ไม่เท่ากับ 2:
<?php
$query = "SELECT * FROM users WHERE id!=2";
?>
ตัวอย่าง
แทนที่จะใช้คำสั่ง != คุณสามารถใช้คำสั่ง
<> ได้:
<?php
$query = "SELECT * FROM users WHERE id<>2";
?>
ตัวอย่าง
เลือกผู้ใช้ที่มีอายุ 23 ปี:
<?php
$query = "SELECT * FROM users WHERE age=23";
?>
ตัวอย่าง
เลือกผู้ใช้ที่มีเงินเดือน 500:
<?php
$query = "SELECT * FROM users WHERE salary=500";
?>
ตัวอย่าง
เลือกผู้ใช้ที่มีชื่อ 'user1' ที่นี่
มีรายละเอียดสำคัญรออยู่: เนื่องจากชื่อเป็น
สตริง จึงจำเป็นต้องใส่ในเครื่องหมายคำพูด:
<?php
$query = "SELECT * FROM users WHERE name='user1'";
?>
ตัวอย่าง
หากไม่มีคำสั่ง WHERE
ระบบจะเลือกข้อมูลทั้งหมดจากตาราง ลอง
เลือกพนักงานทุกคนดู:
<?php
$query = "SELECT * FROM users";
?>
โจทย์ฝึกปฏิบัติ
เลือกผู้ใช้ที่มี id เท่ากับ 3
เลือกผู้ใช้ที่มีเงินเดือน 900
เลือกผู้ใช้ที่มีอายุ 23 ปี
เลือกผู้ใช้ที่มีเงินเดือนมากกว่า 400
เลือกผู้ใช้ที่มีเงินเดือนเท่ากับหรือมากกว่า
500
เลือกผู้ใช้ที่มีเงินเดือนไม่เท่ากับ 500
เลือกผู้ใช้ที่มีเงินเดือนเท่ากับหรือน้อยกว่า
500