2017-01-24 17 views
1

日付から月を取得するクエリを実行しようとしていますが、不正な値を示すようです。MySQL MONTH()が正しい値を返しません

コードは次のとおりです。

MONTH(FROM_UNIXTIME(Datum)) 

そしてデータムは次のとおりです。

24/01/2017 

Iドンたら...結果は01または1でなければなりませんが、代わりに、それは12であると私はなぜ知りませんその日の蛾を手に入れようとすると、24/01/2017が私に間違っていると分かりません。

誰か助けてくれますか?

+1

正確にはUnix形式のDatum値は何ですか? – McNets

+0

何らかの理由でunix形式の日付が31/12/1969 EDIT:私の他のSQLサーバはこれを正しく行います...私は実際のサーバでデータベースを台無しにしないようにこれをテストするために必要です – user265889

+0

unix timestamp are通常は整数です。 http://www.unixtimestamp.com/ – McNets

答えて

0

あなたDatum24/01/2017ある場合は、以下試してください。

month(str_to_date('24/01/2017', '%d/%m/%Y')) 
0

はあなたの問題を解決するためにSTR_TO_DATE()機能を使用してください。

SELECT MONTH(str_to_date('24/01/2017', '%d/%m/%Y')); 
関連する問題