UNIX_TIMESTAMP()
関数を正しく変換するには、有効な日付/時刻形式が必要です。そのため、最初に既存の日付/時刻形式を有効/認識された形式(年を含む)に変換する必要があります。これは、MySQLのSTR_TO_DATE()
を使用して行うことができます 関数を使用して、渡す形式を通知し、ハードコードされた年の値に連結します。これは、常に2016年の場合です。
STR_TO_DATE(CONCAT('2016-', <your date/time value>), '%Y-%d %b %h:%i%p')
その後、UNIX_TIMESTAMP()
を使用できます その有効な日付をUNIXタイムスタンプに変換し、それらすべてのレコードを1つのステップで更新する関数:
UPDATE table_name
SET new_timestamp =
UNIX_TIMESTAMP(STR_TO_DATE(CONCAT('2016-', timestamp), '%Y-%d %b %h:%i%p'));