まで、私は効果的にログファイルであるテーブルを持っている....PostgreSQLの - ログデータを集約 - 最小/最大時間別のセッション
id timestamp user job action
--------------------------------------------
1 7:00 bob 22 did x
2 7:15 bob 22 did q
3 7:30 joe 22 did z
4 8:00 bob 22 did y
5 8:10 bob 56 did x
6 8:11 joe 22 did a
7 8:12 bob 56 did e
8 8:15 joe 45 did u
9 8:24 bob 22 BACK to do w
10 8:32 bob 22 did p
11 8:45 joe 45 did n
12 8:47 joe 56 fixed bobs z
...等...
私は各ユーザーが各自の仕事に費やした時間を集計しようとしました。ユーザーがジョブを変更したときに
仕事で時間が第1の(ユーザー/仕事)で始まり、その後、停止します。
- ボブは8時10分に変更 - 彼は8に7時から仕事22を働きました:00
- は、その後、彼は午前8時24分から午前8時32分、私はスタート/ストップを引き出すことができますどのよう
に戻って仕事22に入った8時12
私はこの作成できるようにくすぐられます:私は、ループやクエリでそれを行うためのスクリプトを書くことができます...しかし、それはSQLする必要がありますように、これは思わ
start stop job user
-----------------------------
7:00 8:00 22 bob
7:30 8:11 22 joe
8:10 8:12 56 bob
8:15 8:45 45 joe
8:24 8:32 22 bob
を - それが私の微々たる超えですSQLスキル - Googleの助けを借りても、自分自身が混乱していることがわかりました!
ありがとうございます!
はどのように文字列として、時間を保存しますか? – McNets