2011-12-09 9 views
0

システムから別のシステムにインポートするさまざまな注文の詳細については、4つの日付列を持つ膨大なスプレッドシートがあります。MYSQLで日付文字列を適切な日付スタンプに変換する(PHPではなくSQLコードが必要)

日11月27日午後05時02分40秒PST 2011

土11月26日17時01分54秒PST 2011

日付は、現在、私はスプレッドシートから作成したMySQLデータベースに次のようになり

月11月28日18:06:29 PST 2011

と私はそれらを単純にMYSQLでレポートを実行するためのクエリを実行できる日付スタンプにします。私は今、PHPを使用していないので、私はこの変換をMySQLでやりたいと思っています。私は似たようなスレッドを見つけましたが、この特定のアプローチに役立つものは何もありません。それがすでにどこかで扱われている場合は謝罪してください。

+0

データベース列のデータ型は?また、グーグル "mysqlの日付関数"はそれほど難しいことではありません。 – Jon

+0

私はGoogleFooをやりましたが、この文字列(それは文字列)の一致をどのようにしてdatetimeに変更するかを見つけることができませんでした。 – Lynn

+0

カラムタイプはvarcharです。カラムをdatetimeに変更すると、値が消去されます.... – Lynn

答えて

1

使用str_to_date

select str_to_date('Sun Nov 27 17:02:40 PST 2011', '%a %b %e %H:%i:%s PST %y') 

私はあなたがが正しくタイムゾーン名を変換することができるとは思いません。

+0

これは私が探していたものです。私は実際の書式設定ビットを調べることができると知っていましたが、selectステートメントに組み込む方法を知らない(または見つけることができませんでした)。 – Lynn

+0

結局のところ、私はまっすぐな文字列str_to_dateを与えることができない様々なタイムスタンプを持つたくさんの行があります。私は代わりに一致させるMySQLのパターンを特定し、その一致に基づいて日付をフォーマットする必要があります。 – Lynn

+0

varcharの列に日付を格納することは非常に悪い考えです。できるだけ早くそれを実際の 'date'カラムに移行する必要があります(おそらく少しのプログラムが必要です) –

関連する問題