1

クエリの選択部分としてこれを取得しました:

SELECT cast(cast(exp_channel_titles.edit_date as char(14)) as datetime) AS Edit_Date

これは、この形式 20130501092128 でデータベースからデータを取得し、この形式 2013-05-01 09:21:28 で返します

これがどのように機能するのか完全には理解していないので、ある種の魔法だとしか思えません。

ただし、吐き出す日付の形式を次の形式に変更する必要があります: %d/%m/%Y %k:%i:%s

私は正直に言うと、そのクエリでこれを行う方法がわかりません。それをパラメーターとしてdatetimeに追加しようとしました(それはmysql関数ですか?!?)が、喜びや他の多くの貧弱な試みはありません。の中へ。

誰かが助けることができれば、私は非常に感謝しています!

4

2 に答える 2

4

MySql は 20130501092128 を自動的に日付と時刻のフィールドに変換します。それが VARCHAR または INT であっても、次のように使用できます。

SELECT DATE_FORMAT(exp_channel_titles.edit_date, '%d/%m/%Y %k:%i:%s')

ここでフィドルを参照してください。

于 2013-05-03T14:54:16.040 に答える
1

DATE_FORMAT()MySQL の関数を使用して出力形式を変更できます。ここにそれに関するドキュメントの投稿があります。

https://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_date-format

出力形式は任意の形式に変更できますが、そのデータをアプリケーションで受け取った場合は、データを変更してサーバーに返します (行の編集など)。MySQL の有効な日付に再フォーマットすることを忘れないでください。

方法がわからない場合は、クエリでこれを行う必要があります。

SELECT DATE_FORMAT(cast(cast(exp_channel_titles.edit_date as char(14))
 as datetime), '%e/%m/%Y %k:%i:%s') AS Edit_Date
于 2013-05-03T14:52:41.240 に答える