2016-09-01 5 views
0

重複する質問のように思われることは、事前にお詫びしますが、私が見つけたすべての解決方法を試してみましたが、何も動作していないようです。MySQLのAMPMからミリタリーへの時間文字列の変換

私は時間が別々にvarcharとして格納されたテーブルを持っています。特定のレコードの値は "6:00 PM"です

私はすべての関数と変換をMySQLで試みましたが、軍事的な時刻に変換することはできません。

アイデア?

答えて

1

VARCHARではなく、DATETIMEとして保存時間を考慮する必要があります。そうすれば、あなたはDATE_FORMAT()で望みどおりにフォーマットすることができます。あなたがここに何ができるか

はそれをフォーマットするDATE_FORMAT()を使用し、その後、DATETIMESTR_TO_DATE()に変換に文字列を使用しています。

-- Let's say `time` is the value "6:00 PM" 
-- This should return "18:00" 
SELECT DATE_FORMAT(STR_TO_DATE(`time`, '%l:%i %p'), '%k:%i') AS milTime; 
関連する問題