Office.in.th
คู่มือระบบ เนื้อหาผ่านการตรวจสอบแล้ว

การใช้งาน Query Builder

Query Builder เป็นเครื่องมือที่ Laravel มีมาให้เพื่อช่วยให้เราสามารถสร้างคำสั่ง SQL สำหรับการดึง เพิ่ม แก้ไข และลบข้อมูลในฐานข้อมูลได้โดยไม่ต้องเขียน SQL โดยตรง...

Query Builder เป็นเครื่องมือที่ Laravel มีมาให้เพื่อช่วยให้เราสามารถสร้างคำสั่ง SQL สำหรับการดึง เพิ่ม แก้ไข และลบข้อมูลในฐานข้อมูลได้โดยไม่ต้องเขียน SQL โดยตรง ทำให้โค้ดอ่านง่ายและลดความซับซ้อนของการเขียน SQL

Query Builder ทำงานร่วมกับฐานข้อมูลหลายประเภท เช่น MySQL, PostgreSQL, SQLite และ SQL Server ซึ่งช่วยให้สามารถสร้างและจัดการข้อมูลในฐานข้อมูลได้อย่างมีประสิทธิภาพและรวดเร็ว

การใช้งาน Query Builder

Laravel Query Builder สามารถเข้าถึงได้ผ่าน Facade DB โดยใช้คำสั่ง DB::table() เพื่อระบุตารางที่ต้องการทำงานด้วย

1. การดึงข้อมูลด้วย Query Builder

เราสามารถใช้คำสั่ง get(), first(), และ find() เพื่อดึงข้อมูลจากฐานข้อมูลได้

  • ดึงข้อมูลทั้งหมดจากตาราง users:
use Illuminate\Support\Facades\DB;

$users = DB::table('users')->get();
  • ดึงข้อมูลแถวแรกจากตาราง users:
$user = DB::table('users')->first();
  • ดึงข้อมูลตาม Primary Key:
$user = DB::table('users')->find(1);

2. การใช้เงื่อนไขในการ Query

สามารถใช้ where() เพื่อกรองข้อมูลตามเงื่อนไขที่ต้องการ

  • ดึงข้อมูลผู้ใช้ที่มีอายุ 25 ปี:
$users = DB::table('users')->where('age', 25)->get();
  • ใช้หลายเงื่อนไขด้วย AND และ OR:
// ใช้ AND
$users = DB::table('users')
            ->where('age', '>', 20)
            ->where('status', 'active')
            ->get();

// ใช้ OR
$users = DB::table('users')
            ->where('age', '>', 20)
            ->orWhere('status', 'active')
            ->get();

3. การจัดเรียงและการจำกัดข้อมูล

สามารถใช้ orderBy() และ limit() เพื่อจัดเรียงและกำหนดจำนวนข้อมูลที่ต้องการดึงออกมา

  • จัดเรียงข้อมูลตามอายุจากน้อยไปมาก:
$users = DB::table('users')->orderBy('age', 'asc')->get();
  • ดึงข้อมูล 10 แถวแรก:
$users = DB::table('users')->limit(10)->get();

4. การนับและการทำ Aggregation

Query Builder มีคำสั่ง Aggregation เช่น count(), max(), min(), avg(), และ sum()

  • นับจำนวนผู้ใช้ทั้งหมดในตาราง users:
$userCount = DB::table('users')->count();
  • หาค่าเฉลี่ยของอายุผู้ใช้:
$averageAge = DB::table('users')->avg('age');

5. การเพิ่มข้อมูล

สามารถใช้ insert() เพื่อเพิ่มข้อมูลลงในฐานข้อมูล

DB::table('users')->insert([
    'name' => 'John Doe',
    'email' => '[email protected]',
    'age' => 30,
]);

6. การอัปเดตข้อมูล

ใช้ update() เพื่อแก้ไขข้อมูลในฐานข้อมูล

DB::table('users')
    ->where('id', 1)
    ->update(['name' => 'Jane Doe']);

7. การลบข้อมูล

ใช้ delete() เพื่อทำการลบข้อมูลจากฐานข้อมูล

DB::table('users')->where('id', 1)->delete();

การนำไปใช้งาน

Query Builder ใน Laravel ช่วยให้การทำงานกับฐานข้อมูลเป็นไปได้อย่างสะดวกและเป็นระบบ สามารถใช้ในการ Query ดึงข้อมูล เพิ่ม แก้ไข และลบข้อมูลได้อย่างง่ายดาย เหมาะสำหรับการทำงานกับข้อมูลที่ไม่ซับซ้อนมาก และลดโอกาสในการเกิดข้อผิดพลาดจากการเขียน SQL แบบดั้งเดิม

Office.in.th Custom Service

ต้องการพัฒนาระบบหรือปรับแต่งจากโครงสร้างนี้?

Office.in.th รับพัฒนาและออกแบบ Enterprise Web Application, API Integration และระบบบริหารงานภาครัฐ/เอกชน พร้อมการสนับสนุนระยะยาว

ดูบริการรับพัฒนาซอฟต์แวร์