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

ฟังก์ชัน SYSDATE() ใช้เพื่อคืนค่าวันและเวลาปัจจุบันขณะรันคำสั่งจริง ๆ จากระบบปฏิบัติการ (OS) ที่รัน MySQL ต่างจาก NOW() ตรงที่ SYSDATE() จะให้เวลาปัจจุบันจริง ๆ ทันทีที่คำสั่ง SQL ทำงาน เหมาะสำหรับงานที่ต้องการความแม่นยำระดับเวลาขณะรันจริง (real-time)

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

  1. ใช้ในระบบที่ต้องการบันทึกเวลาปัจจุบันจริง ณ ขณะรัน
  2. ใช้ตรวจสอบ log หรือเหตุการณ์ที่ต้องแม่นยำระดับวินาที
  3. เหมาะสำหรับระบบการเงิน, ระบบจอง, หรืองานวิเคราะห์ความล่าช้า
  4. ใช้ใน INSERT, UPDATE, หรือ WHERE ได้เช่นเดียวกับ NOW()

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

SYSDATE()

หรือ

SYSDATE(fsp)
  • fsp Fractional Seconds Precision (ค่าระหว่าง 0 ถึง 6) ระบุจำนวนหลักทศนิยมของวินาที เช่น SYSDATE(3) จะได้ผลลัพธ์ในรูปแบบ 2025-04-10 15:34:45.123

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

แสดงเวลาแบบ real-time

SQL
SELECT SYSDATE() AS system_now;
-- ผลลัพธ์: 2025-04-10 15:34:45

แสดงเวลาละเอียดถึงระดับ milliseconds

SQL
SELECT SYSDATE(3) AS precise_time;
-- ผลลัพธ์: 2025-04-10 15:34:45.123

ใช้ในคำสั่ง INSERT

SQL
INSERT INTO logs (event, created_at)
VALUES ('User Login', SYSDATE());
แชร์เรื่องนี้