どうやって次のフォーマットをunixタイムスタンプに変換するのですか?
Apr 15 2012 12:00AM
私がDBから取得したフォーマットは最後にAM
を持っているようです。私は以下を使ってみましたが、うまくいきませんでした:
CONVERT(DATETIME, Sales.SalesDate, 103) AS DTSALESDATE,
CONVERT(TIMESTAMP, Sales.SalesDate, 103) AS TSSALESDATE
where Sales.SalesDate value is Apr 15 2012 12:00AM
CONVERT DATETIME to UNIX TIME STAMP
に対してこのクエリを試してください。
SELECT UNIX_TIMESTAMP(STR_TO_DATE('Apr 15 2012 12:00AM', '%M %d %Y %h:%i%p'))
CHANGE DATE FORMATE
に対するこのクエリ
SELECT FROM_UNIXTIME(UNIX_TIMESTAMP(STR_TO_DATE('Apr 15 2012 12:00AM', '%M %d %Y %h:%i%p')),'%m-%d-%Y %h:%i:%p')
日付をMySQLの標準日付形式に変換するには STR_TO_DATE
と、それからタイムスタンプを取得するには UNIX_TIMESTAMP
の両方を使用する必要があります。
日付の形式を考えると、次のようになります。
UNIX_TIMESTAMP(STR_TO_DATE(Sales.SalesDate, '%M %e %Y %h:%i%p'))
有効なタイムスタンプを渡します。フォーマット文字列の詳細については、 STR_TO_DATE
のドキュメントを参照してください。
現在の日付については、MySQLクエリでUNIX_TIMESTAMP()
を使用してください。