テーブルを作成するときに、型の列とDATE
型の列を1つずつ定義しましたTIME
。私は次のようなものを使用して値を挿入しますphp script
:
date--> 2013-11-11
time--> 12:12:12
SQLブラウザにクエリを実行すると、これらの値がまったく同じように表示されます。しかし、私はそれがとを格納する形式を知りませdate
んtime
。のようにyyyy-mm-dd
またはyyyy-dd-mm
。
変更する方法はありますか?
日付と時刻は、"YYYY-MM-DD" および "YYYY-MM-DD HH:MM:SS" の形式で MySQL に保存されます。これは、必ずしも Web ページまたはアプリケーションで表示したい形式ではありません。日付と時刻を目的の形式に再フォーマットするには、2 つの方法があります。1 つは DATE_FORMAT() 関数を呼び出す MySQL の SQL クエリで行う方法で、もう 1 つは MySQL データベースからデータを取得するプログラミング言語で行う方法です。
MySQL 5.1から:
DATE 型は、日付部分があり時刻部分がない値に使用されます。MySQL は DATE 値を「YYYY-MM-DD」形式で取得して表示します。サポートされている範囲は「1000-01-01」から「9999-12-31」です。
http://dev.mysql.com/doc/refman/5.5/en/datetime.html
MySQLは、DATE値を「YYYY-MM-DD」形式で取得して表示します
http://dev.mysql.com/doc/refman/5.5/en/time.html
MySQLは、TIME値を「HH:MM:SS」形式で取得して表示します
私はこれが変わることができるとは思わない。でもあなたは気にしない。DATE_FORMAT()
と関数を使用して、好みの形式で日付と時刻を抽出できますTIME_FORMAT()
。
日付列の内部ストレージを知りたい場合は、Date and Time Data Type Representationを確認できますが、別の形式で日付を選択したいと思います。他の人はすでにそれについて答えました。
3 バイトで格納され、常に YYYY-MM-DD です。
datetime は Ymd H:i:s 形式、つまり年月日時分秒です。一部のみを使用する場合、形式は同じままです。
フォーマットを変更したい場合、多くの方法があります。最も簡単なのは次のようなことですreturn date("Y-d-m H:i:s", strtotime($mysqldatetime));
(オランダの日付に変えます)。
時間用と日付用の 2 つの別々の列を使用していることに注意してください。1 つの列のみを使用する場合、欠落している値はデフォルト値で埋められます (時刻は で00:00:00
、日付は1970-01-01