0

私が持っているもの:

プロジェクトが開始された時刻のタイムスタンプフィールドがあります

ユーザーが完了率でプロジェクトを更新しています(.01から1ではなく1から100)

推定完了タイムスタンプを使用して更新テーブルに挿入したいと思います。

基本的な数学:

プロジェクトのフルタイムを取得する方法:

(now() - start timestamp) * (100 / percent complete)

終了時間:

start timestamp + full time of the project estimated above

次に、挿入中に推定終了時間をテーブルに挿入する必要があります。

4

2 に答える 2

0

すぐに問題が発生します。数学を気にしないでください。

timestamp行に触れるたびに、データ型は現在の時刻に自動的に更新されます。つまり、「ユーザーがプロジェクトを更新する」と、start_timestamp列も更新されます。

datetime代わりに、同じタイプのデータを格納するが、他の列が更新されても更新されないデータ型が必要です。

于 2012-08-25T18:41:25.387 に答える
0

私はそれを持っていると思います。

select timestampadd(second, round(timestampdiff(second, '2012-08-22 22:00:30', now())*(100/33)), '2012-08-22 22:00:30');

戻る:2012-08-30 17:28:41

33は%になり、他のタイムスタンプは開始時刻になります。完璧に動作します。

于 2012-08-25T18:57:16.507 に答える