|
Расчет дистанции по всем записям.
|
|||
---|---|---|---|
#18+
Добрый день. Есть таблица. CREATE TABLE `geo` ( `id` BIGINT(20) NOT NULL AUTO_INCREMENT, `uid_user` MEDIUMTEXT NULL DEFAULT NULL COLLATE 'utf8_general_ci', `last_time_action` INT(11) NULL DEFAULT NULL, `cur_point_drv` POINT NULL DEFAULT NULL) last_time_action -> unix timestamp Пример данных 1,`user1`,1595437466,geopoint; 2,`user2`,1595437467,geopoint; 3,`user3`,1595437467,geopoint; 4,`user1`,1595437468,geopoint; 5,`user3`,1595437490,geopoint; Как можно рассчитать дистанцию (st_distance) всех записей с учетом uid_user? Т.е. user1- 200 user2 - 0 user3 - 1110 Спасибо! ... |
|||
:
Нравится:
Не нравится:
|
|||
22.07.2020, 20:50 |
|
Расчет дистанции по всем записям.
|
|||
---|---|---|---|
#18+
А точек по две как в вашем примере? Если да , то можно сделать INNER JOIN таблицы саму на себя так вы получите начало и конец в одной строке и останется их подставить в функцию. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.07.2020, 21:32 |
|
Расчет дистанции по всем записям.
|
|||
---|---|---|---|
#18+
Fitter2, Точек может быть сто и более. Если брать по аналогии с php, то взять все distinct(guid) order by last_time и в цикле перебрать ... |
|||
:
Нравится:
Не нравится:
|
|||
22.07.2020, 23:39 |
|
Расчет дистанции по всем записям.
|
|||
---|---|---|---|
#18+
Тогда мне приходит в голову только программирование. Кстати, если `geo` это как лог, то и сортировать по by last_time может и не нужно (можно сохранять в обратном порядке). Если вы подразумеваете дистанцию как полный путь из кучи точек, там может можно добавить поле хранящее приращение дистанции, тогда вообще через СУММ всё соберется. Видно ничего конкретного предложить не смогу. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2020, 00:48 |
|
|
start [/forum/topic.php?fid=47&fpage=18&tid=1828450]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
198ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
33ms |
get tp. blocked users: |
2ms |
others: | 260ms |
total: | 533ms |
0 / 0 |