Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

การ擷ค่าวันที่เป็นตัวเลข (Unix Timestamp) จากรูปแบบวันที่ใน MySQL

การแปลงวันที่รูปแบบ 'DD-Mon-YY' เป็น Unix Timestamp

ใช้ STR_TO_DATE() แปลงสตริงเป็น DATE แล้ว UNIX_TIMESTAMP() แปลงเป็นวินาทีตั้งแต่ Epoch

คำสั่ง

SELECT UNIX_TIMESTAMP(STR_TO_DATE(date_column, '%d-%b-%y')) AS numeric_date
FROM table_name;

ตัวอย่าง

CREATE TABLE demo34 (datevalue VARCHAR(40));

INSERT INTO demo34 VALUES 
('31-Jan-19'), ('03-Mar-21'), ('13-Jun-20');

SELECT UNIX_TIMESTAMP(STR_TO_DATE(datevalue, '%d-%b-%y')) AS Numeric_Date
FROM demo34;

ผลลัพธ์

Numeric_Date
1548873000
1614709800
1591986600

รูปแบบ Format Specifiers:

  • %d - วัน (01-31)
  • %b - ชื่อเดือนย่อ (Jan, Feb, Mar...)
  • %y - ปี 2 หลัก (19, 20, 21)
  • %Y - ปี 4 หลัก

การประยุกต์: ใช้สำหรับ Migration ข้อมูล, Comparison, Sorting หรือ Integration กับระบบอื่นที่ใช้ Unix Time