私は、異なる時間に各車両のエントリがあるテーブルを持っています。各地から始まった車の数を取得する方法
vehicle_ id time place
____________ _____ ________
1 2016-09-01 10:00:00 10
2 2016-09-01 10:00:00 12
1 2016-09-01 10:01:00 10
1 2016-09-01 10:01:10 10
3 2016-09-01 10:02:00 15
2 2016-09-01 10:03:00 18
1 2016-09-01 10:03:00 12
2 2016-09-01 10:04:00 10
2 2016-09-01 10:05:00 10
1 2016-09-01 10:06:00 15
2 2016-09-01 10:07:00 18
3 2016-09-01 10:09:00 19
4 2016-09-01 11:06:00 15
1 2016-09-01 11:07:00 18
3 2016-09-01 11:09:00 19
4 2016-09-01 11:10:00 15
2 2016-09-01 11:11:00 18
6 2016-09-01 11:12:00 19
4 2016-09-01 11:16:00 15
5 2016-09-01 11:17:00 18
3 2016-09-01 11:19:00 19
私が例えば10時から11:00 3に車が信号を送信し始めているし、車両1が所定の位置10から始まっ?どの場所からの期間からデータを送信して開始されているどのように多くの車を知りたいです車両4は場所12から、車両3は場所15から、そして11時から12時の間に車両4は場所15から始まり、車両5は場所18から始まり、車両6は場所19から始まった。
最終出力は
For 10-11
place vehicle_count
_____ _____________
10 1
12 1
15 1
For 11-12
place vehicle_count
_____ _____________
15 1(vehicle_id 4)
18 1(vehicle_id 5)
19 1(vehicle_id 6)
For 10-12
place vehicle_count
_____ _____________
10 1(vehicle_id 1)
12 1(vehicle_id 2)
15 2(vehicle_id 3,4)
18 1(vehicle_id 5)
19 1(vehicle_id 6)
でした
select count(distinct(vehicle_id)) from public.datatable where time>=2016-09-01 10:00:00 and time<2016-09-01 11:00:00
しかし、これは起源の場所のみを取得する方法です(車のID 1は場所10から発信されるため、場所10の下でカウントされることを意味します)。
これは実際にJavaと関係がありますか? – RealSkeptic
@RealSkepticいいえSQLが十分に強力でない場合は、Javaで試すことができます –