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

ฟังก์ชัน TIMESTAMP() ใช้เพื่อแปลงหรือรวมค่า DATE และ TIME ให้กลายเป็นค่า DATETIME ใช้เมื่อต้องการรวมวัน (DATE) และเวลา (TIME) เข้าด้วยกัน หรือแปลงค่าประเภท DATETIME ให้เหมาะสำหรับการประมวลผลต่อไป

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

  1. รวมวันและเวลาเพื่อสร้างค่าที่สามารถใช้ใน DATETIME ได้
  2. แปลงค่าที่เป็น DATE หรือ TIME ให้สามารถใช้กับการคำนวณเวลา
  3. เหมาะสำหรับการจัดเก็บข้อมูลเหตุการณ์ที่ต้องการ DATETIME แบบสมบูรณ์

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

บบที่ 1 แปลงค่าเป็น DATETIME

TIMESTAMP(expr)
  • expr คือค่าที่เป็น DATE, DATETIME, หรือ TIMESTAMP

แบบที่ 2 รวม DATE และ TIME เป็น DATETIME

TIMESTAMP(date_expr, time_expr)
  • date_expr คือวันที่ เช่น '2025-04-10'
  • time_expr คือเวลา เช่น '14:30:00'

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

แปลง DATE เป็น DATETIME

SQL
SELECT TIMESTAMP('2025-04-10') AS full_datetime;
-- ผลลัพธ์: 2025-04-10 00:00:00

รวม DATE กับ TIME

SQL
SELECT TIMESTAMP('2025-04-10', '14:30:00') AS full_timestamp;
-- ผลลัพธ์: 2025-04-10 14:30:00

รวมวันที่และเวลาจากฟิลด์ในตาราง

SQL
SELECT order_id,
       TIMESTAMP(order_date, order_time) AS full_order_time
FROM orders;

ตรวจสอบว่าเหตุการณ์เกิดขึ้นก่อนเวลาที่กำหนดหรือไม่

SQL
SELECT user_id, TIMESTAMP(login_date, login_time) AS login_at
FROM logins
WHERE TIMESTAMP(login_date, login_time) < '2025-04-10 08:00:00';
แชร์เรื่องนี้