У меня есть стол, в котором есть вход каждого транспортного средства в разное время.Как получить количество транспортных средств, запущенных с каждого места
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:00 до 11:00 3 транспортных средств начали посылать сигналы и автомобиль 1 начал с места 10 и транспортное средство 2 из места 12 и транспортное средство 3 с места 15. И с 11:00 до 12:00 транспортное средство 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
Но это дает отсчет от всех мест, но как получить только места происхождения. (Что означает транспортное средство идентификатор 1 происходит от места 10, так что следует учитывать при месте 10 только) .Any помощи ценятся
Это действительно имеет отношение к Java? – RealSkeptic
@RealSkeptic Нет. Я спросил, что если SQL недостаточно мощный, то можете попробовать с JAVA –