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

แปลงสตริง (varchar) เป็นรูปแบบการประทับเวลาใน MySQL หรือไม่


ในการแปลงสตริงเป็นรูปแบบการประทับเวลา ให้ใช้ STR_TO_DATE() ร่วมกับ DATE_FORMAT() ให้เราสร้างตารางก่อน -

mysql> สร้างตาราง DemoTable1602 -> ( -> ReportingDate varchar(40) -> ); ตกลง ตกลง 0 แถวได้รับผลกระทบ (0.51 วินาที)

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

mysql> แทรกลงในค่า DemoTable1602 ('พุธ 02 ต.ค. 16:10:45 น. IST 2019'); เคียวรีตกลง 1 แถวได้รับผลกระทบ (0.20 วินาที) mysql> แทรกลงในค่า DemoTable1602 ('วันศุกร์ที่ 31 พฤษภาคม 13:00:10 น. IST 2019'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.13 วินาที) mysql> แทรกลงในค่า DemoTable1602 ('วันจันทร์ 31 ธันวาคม 14:20:00 น. IST 2018'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.23 วินาที)

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

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

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

<ก่อนหน้า>+-----------------------------+| วันที่รายงาน |+------------------------------+| พ. 02 ต.ค. 16:10:45 น. IST 2019 || ศุกร์ที่ 31 พ.ค. 13:00:10 น. IST 2019 || จันทร์ที่ 31 ธ.ค. 14:20:00 น. IST 2018 |+------------------------------------+3 แถวในชุด (0.00 วินาที )

ต่อไปนี้เป็นแบบสอบถามเพื่อแปลงสตริงเป็นรูปแบบการประทับเวลาใน MySQL -

mysql> เลือก date_format(str_to_date(ReportingDate,'%a %b %d %T IST %Y'),'%d-%m-%Y %H:%i:%s') จาก DemoTable1602;

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

<ก่อน>+--------------------------------------------- ------------------------------------+| date_format(str_to_date(ReportingDate,'%a %b %d %T IST %Y'),'%d-%m-%Y %H:%i:%s') |+------- -------------------------------------------------- ------------------------------------+| 02-10-2019 16:10:45 || 31-05-2019 13:00:10 || 31-12-2018 14:20:00 |+-------------------------------------- ----------------------------------------------------+3 แถวในชุด ( 0.03 วินาที)