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

ฟังก์ชัน MINUTE() ใช้เพื่อดึงค่าของ “นาที” จากข้อมูลประเภท TIME, DATETIME, หรือ TIMESTAMP เหมาะกับการวิเคราะห์ข้อมูลรายนาที เช่น เวลาการใช้งานระบบ, เวลาบันทึกเหตุการณ์ หรือเวลาทำธุรกรรม

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

  1. ใช้ตรวจสอบนาทีจากเวลาบันทึก เช่น log หรือเวลาทำธุรกรรม
  2. ใช้สร้างรายงานหรือกราฟที่แบ่งตามนาที
  3. ใช้กรองข้อมูลเฉพาะช่วงนาทีที่กำหนด เช่น นาทีที่ 00, 15, 30, 45
  4. ใช้จัดกลุ่มข้อมูลรายนาที (GROUP BY MINUTE(...))

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

MINUTE(time_value)
  • time_value คือค่าที่เป็น TIME, DATETIME, TIMESTAMP หรือ string ที่แปลงเป็นเวลาได้ เช่น '14:45:30', '2025-04-10 08:15:00', NOW()

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

ดึงนาทีจาก DATETIME

SQL
SELECT MINUTE('2025-04-10 14:45:30') AS minute_part;
-- ผลลัพธ์: 45

ดึงนาทีจากเวลาปัจจุบัน

SQL
SELECT MINUTE(NOW()) AS current_minute;
-- เช่น ผลลัพธ์: 22 (ขึ้นอยู่กับเวลาจริง)

ตัวอย่างการประยุกต์ใช้งาน

กรองรายการที่เกิดในนาทีที่ 0 ของทุกชั่วโมง

SQL
SELECT *
FROM logs
WHERE MINUTE(log_time) = 0;

สรุปจำนวนรายการในแต่ละนาที (เช่นภายในชั่วโมงเดียวกัน)

SQL
SELECT MINUTE(event_time) AS event_minute, COUNT(*) AS total_events
FROM event_logs
WHERE HOUR(event_time) = 14
GROUP BY event_minute
ORDER BY event_minute;

หมายเหตุ

  • ค่าที่ป้อนให้ MINUTE() ต้องสามารถแปลงเป็น TIME ได้
  • ถ้าค่าเป็น NULL หรือรูปแบบไม่ถูกต้อง จะคืนค่า NULL
แชร์เรื่องนี้