MySQL การใช้งานฟังก์ชัน CURDATE()

ฟังก์ชัน CURDATE() ใน MySQL ใช้เพื่อคืนค่าวันที่ปัจจุบัน (Current Date) ของระบบในรูปแบบ YYYY-MM-DD (เช่น 2025-04-10) เหมาะสำหรับงานที่ต้องการใช้งานวันที่ปัจจุบัน เช่น รายงาน, ระบบแจ้งเตือน, ระบบจอง, หรือการกรองข้อมูลตามวันที่

รูปแบบการใช้งาน

CURDATE()

ประโยชน์ของฟังก์ชัน CURDATE()

  1. ใช้เปรียบเทียบกับข้อมูลวันที่ เช่น วันหมดอายุ, วันนัดหมาย, วันสร้างข้อมูล
  2. ใช้กำหนดเงื่อนไขในการค้นหา เช่น “ข้อมูลที่สร้างวันนี้”
  3. ใช้แสดงวันที่อัตโนมัติในรายงาน หรือหน้าเว็บ
  4. ใช้ร่วมกับฟังก์ชันอื่น เช่น DATEDIFF(), ADDDATE(), SUBDATE()

ตัวอย่างการใช้งาน

แสดงวันที่ปัจจุบัน

SQL
SELECT CURDATE();  
-- ผลลัพธ์: 2025-04-10 (ขึ้นอยู่กับวันที่ของระบบ)

เปรียบเทียบกับวันที่ในตาราง

SQL
SELECT *
FROM orders
WHERE order_date = CURDATE();
  • แสดงรายการสั่งซื้อที่เกิดขึ้นวันนี้

หาวันที่ครบกำหนดอีก 30 วันจากวันนี้

SQL
SELECT ADDDATE(CURDATE(), INTERVAL 30 DAY) AS due_date;

หมายเหตุ

  • CURDATE() คืนค่าเฉพาะวันที่ ถ้าต้องการเวลารวมด้วย ให้ใช้ NOW() แทน
  • ฟังก์ชันนี้อิงเวลาตามระบบฐานข้อมูล (server time)
  • หากมีการใช้ Timezone ในระบบ ผลลัพธ์อาจต่างกันตามการตั้งค่า
แชร์เรื่องนี้