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

วิธีหาจำนวนวินาทีทั้งหมด (Unix Timestamp) จากค่า DATETIME ใน MySQL

ใช้ฟังก์ชัน UNIX_TIMESTAMP() แปลง DATETIME เป็นวินาทีนับจาก Epoch (1970-01-01 00:00:01 UTC):

mysql> SELECT UNIX_TIMESTAMP('2017-05-15 04:05:30') AS 'NUMBER OF SECONDS';
+-------------------+
| NUMBER OF SECONDS |
+-------------------+
| 1494801330        |
+-------------------+

จากเวลาปัจจุบัน

mysql> SELECT UNIX_TIMESTAMP(NOW()) AS 'NUMBER OF SECONDS';
+-------------------+
| NUMBER OF SECONDS |
+-------------------+
| 1509248856        |
+-------------------+

จากคอลัมน์ในตาราง

mysql> SELECT UNIX_TIMESTAMP(Dateofreg) AS 'NUMBER OF SECONDS' FROM testing WHERE StudentName = 'Gaurav';
+-------------------+
| NUMBER OF SECONDS |
+-------------------+
| 1509247113        |
+-------------------+

ใช้สำหรับการคำนวณช่วงเวลา, จัดเก็บ timestamp แบบ integer, หรือเปรียบเทียบเวลา