0

私はこのような単純なテーブルを持っています:

CREATE TABLE `users` (
  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `created` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `username` varchar(16) DEFAULT NULL,
  `password` varchar(16) DEFAULT NULL
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

レコードを挿入するたびに、作成されたフィールドに現在のタイムスタンプが自動的に入力されます。ただし、何らかの理由で、挿入されたタイムスタンプが12時間形式で表示され続けます。select created from users limit 1;私が得るようなことをするとき2012-04-30 11:34:05

select current_timestamp私が24時間形式を取得する ようなことをするとき2012-04-30 23:34:05

それをunix_timeにキャストし、phpにPST時間に変換するように依頼すると、それは正しいです。ただし、時間操作を行わずに列を24時間形式で表示したいと思います。誰か助けてもらえますか?

4

1 に答える 1

3

ミッチが上のコメントで言ったように、それはあなたの出力をフォーマットするだけの問題のようSELECTです。試してみてくださいDATE_FORMAT

SELECT DATE_FORMAT(created, '%Y-%c-%e %H:%i:%s') FROM users
于 2012-05-01T00:10:36.873 に答える