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

วันที่และเวลาเป็นจำนวนเต็มใน MySQL?


ใน MySQL ให้แปลงวันที่และเวลาเป็นจำนวนเต็มโดยใช้ฟังก์ชัน UNIX_TIMESTAMP() ไวยากรณ์มีดังนี้:

เลือก UNIX_TIMESTAMP(yourDatetimeColumnName) เป็น anyVariableName จาก yourTableName

เพื่อให้เข้าใจไวยากรณ์ข้างต้น ให้เราสร้างตาราง แบบสอบถามเพื่อสร้างตารางมีดังนี้:

mysql> สร้างตาราง DatetimeToInteger -> ( -> Id int NOT NULL AUTO_INCREMENT, -> ArrivalTime datetime, -> PRIMARY KEY(Id) -> );Query OK, 0 แถวได้รับผลกระทบ (0.94 วินาที)

แทรกบางระเบียนในตารางโดยใช้คำสั่งแทรก แบบสอบถามมีดังนี้:

mysql> แทรกลงในค่า DatetimeToInteger(ArrivalTime) (ตอนนี้ ()); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.09 วินาที) mysql> แทรกลงในค่า DatetimeToInteger (ArrivalTime) (curdate ()); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ ( 0.21 วินาที) mysql> แทรกลงในค่า DatetimeToInteger (ArrivalTime) ('2017-09-21 13:10:55'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.25 วินาที) mysql> แทรกลงในค่า DatetimeToInteger (ArrivalTime) (date_add (ตอนนี้) (),ช่วง 3 ปี));แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.16 วินาที)

แสดงระเบียนทั้งหมดจากตารางโดยใช้คำสั่ง select แบบสอบถามมีดังนี้:

mysql> เลือก *จาก DatetimeToInteger;

ต่อไปนี้เป็นผลลัพธ์:

<ก่อนหน้า>+----+---------------------+| รหัส | เวลามาถึง |+----+---------------------+| 1 | 2019-01-22 15:12:45 || 2 | 2019-01-22 00:00:00 || 3 | 2017-09-21 13:10:55 || 4 | 2022-01-22 15:14:32 |+----+---------------------+4 แถวในชุด (0.00 วินาที)

นี่คือการสืบค้นเพื่อแปลงวันที่และเวลาเป็นจำนวนเต็ม:

mysql> เลือก unix_timestamp(ArrivalTime) เป็น DateTimeToIntegerDemo จาก DatetimeToInteger

ต่อไปนี้เป็นผลลัพธ์:

<ก่อนหน้า>+-----------------------+| DateTimeToIntegerDemo |+----------------------+| 1548150165 || 1548095400 || 1505979655 || 1642844672 |+----------------------+4 แถวในชุด (0.00 วินาที)