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

จะแปลง varchar "time" เป็นเรียลไทม์ใน MySQL ได้อย่างไร?


สำหรับสิ่งนี้ คุณสามารถใช้ TIME_FORMAT() ให้เราสร้างตารางก่อน -

mysql> สร้างตาราง DemoTable1591 -> ( -> ArrivalTime varchar(20) -> );ตกลง ตกลง 0 แถวได้รับผลกระทบ (0.58 วินาที)

แทรกระเบียนบางส่วนในตารางโดยใช้คำสั่ง insert -

mysql> แทรกลงในค่า DemoTable1591 ('1620'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.09 วินาที) mysql> แทรกลงในค่า DemoTable1591 ('2345'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.15 วินาที) mysql> แทรก ลงในค่า DemoTable1591('2210');แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.12 วินาที)

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

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

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -

<ก่อนหน้า>+-------------+| เวลามาถึง |+-------------+| 1620 || 2345 || 2210 |+-------------+3 แถวในชุด (0.00 วินาที)

นี่คือแบบสอบถามเพื่อแปลง varchar "เวลา" เป็นเรียลไทม์ใน MySQL -

mysql> เลือก TIME_FORMAT(CONCAT(SUBSTRING(ArrivalTime, 1,2), ':', SUBSTRING(ArrivalTime, 3,4)), '%h:%i') จาก DemoTable1591;

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -

<ก่อน>+--------------------------------------------- --------------------------------------------------------------+| TIME_FORMAT(CONCAT(SUBSTRING(ArrivalTime, 1,2), ':', SUBSTRING(ArrivalTime, 3,4)), '%h:%i') |+----------- -------------------------------------------------- ------------------------------+| 04:20 || 11:45 || 10:10 |+---------------------------------------------------------- ------------------------------------------------+3 แถวในชุด (0.00 วินาที)