私は私の会社のスペアパーツをリストしたテーブルを作成しました。
SQL:DATE_TIMEとCURRENT_TIMESTAMPを正しく計算するには?
ID | Name | install_date | last_changed | order_nr. | WearStatus
----------
1 | "ABC" | **2017-11-08 10:34:40** | NULL | 123456 | **50**<br>
2 | "DEF" | **2017-11-08 10:34:40** | NULL | 654321 | **10**<br>
:
表は次のようになります。
。
スペアパーツを変更する必要がある未来日付を計算したいと思います。例:
12月11日にパートをインストールしました。12月11日の10日後にこのパートに50%の着用がありました。
私の計算は3式の規則に従って次のとおりです。時間=(100 *デルタT)/ Iは、次のSQLコマンドを使用し
を着用してください:
SELECT ((100*(CURRENT_TIMESTAMP - First_Usage)/Wear) + First_Usage) As 'Change_Date' FROM spare_parts
して、次のように取得します結果:
あなたがそこにARが表示された場合いくつかの狂ったDATE_TIMESのような2017-19-41-43-19-31のようなe。
私の質問は次のとおりです:YYYY-MM-DD hh:mm:ssのように、この「数値」を便利なDATE_TIME形式にフォーマットするにはどうすればよいですか? MySQLは日付の間隔が機能していolredy
SELECT DATE(DATE_ADD(First_Usage, INTERVAL (100*(DATEDIFF(NOW(),First_Usage)/Wear)) day)) As 'Change_Date' FROM spare_parts
または
SELECT FROM_UNIXTIME((100*(CURRENT_TIMESTAMP - UNIX_TIMESTAMP(First_Usage))/Wear) + UNIX_TIMESTAMP(First_Usage))) As 'Change_Date' FROM spare_parts
INSTALL_DATEは、日時フィールドであるのですか? – farbiondriven
TO_DATE(あなたが使っている表現)を試しましたか? – bharathkumarch
はい、DATE_TIMEです。 WearStatusは整数です。結果(Change_Date)もDATE_TIMEにする必要があります。挨拶 – Toberto