|
Как работать с значением из другой строки, как с столбцом их текущей?
|
|||
---|---|---|---|
#18+
Здравствуйте. Есть задача, которая кажется мне не под силу, помогите пожалуйста. Нужно работать со значением из другой строки так, как будто это столбец из текущей строки. Сконструировать так базу не позволяет структура используемой CMS. Вот пример базы (№1): Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
Как можно работать с этой базой (№1) так, как будто если б она выглядела вот так (№2): Код: sql 1. 2. 3. 4. 5. 6. 7.
Пример запроса в базу не могу привести, поскольку он будет очень большим и со сложными математическими функциями (расчет близости координат). Вот пример как бы я работал с базой №2: Код: sql 1. 2.
А как мне работать точно также с базой №1, т.е. чтобы в SELECT подставлялись нужные мне поля из других строк? Надеюсь понятно изложил суть вопроса, очень ожидаю помощи. Большое спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2013, 19:51 |
|
Как работать с значением из другой строки, как с столбцом их текущей?
|
|||
---|---|---|---|
#18+
ScarzieСконструировать так базу не позволяет структура используемой CMS. нуу, человек который писал эту CMS, НЕ страдал "экселем головного мозга", за что ему только "спасибо" нужно сказать, даа... --- ScarzieВот пример как бы я работал с базой №2: Код: sql 1. 2.
Код: sql 1. 2. 3.
... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2013, 20:00 |
|
Как работать с значением из другой строки, как с столбцом их текущей?
|
|||
---|---|---|---|
#18+
Спасибо за ответ. Да, в конкретно описанном мною запросе - Ваше решение подходит как нельзя лучше, но к сожалению в моем запросе оно работать не будет. Мне нужно чтобы в SELECT вместо `x` и `y` подставлялись значения из строк, и мне кажется - тут без вариантов. CMS modx, в разных строках будет храниться широта и долгота. На всякий случай покажу как будет приблизительно выглядеть запрос, но вряд ли кому-то захочется в нем разбираться: Код: sql 1. 2. 3. 4. 5.
и вот тут мне нужно чтобы `lat` и `lng` были не столбцами в одной строке, а значениями из разных строк... ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2013, 20:15 |
|
Как работать с значением из другой строки, как с столбцом их текущей?
|
|||
---|---|---|---|
#18+
можете вот такое view сделать и использовать его в запросах там где нужна таб.в таком "пивотном" виде Код: sql 1. 2. 3.
или сразу подзапросом в итоговом запросе Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2013, 20:54 |
|
Как работать с значением из другой строки, как с столбцом их текущей?
|
|||
---|---|---|---|
#18+
qwerty112, БОЛЬШОЕ, ГИГАНТСКОЕ СПАСИБО! В итоге запрос для modx Evo вышел таким, может кому пригодится: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
Возвращает номера документов и расстояние в киломтерах (по увеличению) от указаной широты/долготы. Еще раз спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.03.2013, 00:25 |
|
Как работать с значением из другой строки, как с столбцом их текущей?
|
|||
---|---|---|---|
#18+
Scarzie, в сторону mysql spatial extensions не смотрели, чтобы не писать все эти формулы? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.03.2013, 05:09 |
|
Как работать с значением из другой строки, как с столбцом их текущей?
|
|||
---|---|---|---|
#18+
tanglir , знаю что уже прошло пол года с момента последнего сообщения, извиняюсь что не ответил, все время хотел разобраться с ними, но никак времени не было. Скажите пожалуйста, а чем spatial extensions в данном случае могут помочь (упростить), ведь вроде как в них нет готовых функций, придется делать все те же вычисления, разве нет? Еще раз извиняюсь, спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.09.2013, 19:11 |
|
Как работать с значением из другой строки, как с столбцом их текущей?
|
|||
---|---|---|---|
#18+
Scarzie, ну вот, например: http://stackoverflow.com/questions/1006654/fastest-way-to-find-distance-between-two-lat-long-points Суть: быстро найти все точки в "квадрате" с заданной стороной (прикиньте сами длину стороны, чтобы их там 50+ всегда находилось), после этого "обычным" методом найти для них расстояния. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2013, 07:17 |
|
Как работать с значением из другой строки, как с столбцом их текущей?
|
|||
---|---|---|---|
#18+
tanglir , спасибо. Т.е. в SELECT по прежнему надо писать формулу, которая высчитывает расстояние до точки: Код: sql 1.
а в WHERE надо использовать функции Spatial Extensions, для того чтобы быстро отобрать все точки в квадрате (допустим на расстоянии 20 км)? Т.е. использовать Spatial Extansions надо только для того, чтобы сильно выиграть в производительности, верно? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2013, 11:07 |
|
Как работать с значением из другой строки, как с столбцом их текущей?
|
|||
---|---|---|---|
#18+
Scarzie, ну да. Не знаю, сильно ли поможет, но попробовать ст о ит. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.09.2013, 04:57 |
|
Как работать с значением из другой строки, как с столбцом их текущей?
|
|||
---|---|---|---|
#18+
Доброго времени суток, уважаемые! ) У меня вот похожая задачка, но не могу сообразить как применить данную формулу в MySQL. Мне нужно по списку координат вычислить общее пройденное расстояние желательно в км, или метрах за заданный отрезок времени.. SELECT SUM (Тут я так понимаю нужно вставить перевод Широты и Долготы в км или метры поля `Latitude` , `Longitude` хранятся в типе Float) FROM `data` WHERE `ID_Dev` = 1 and `DateTime` BETWEEN '2021-05-04 08:00:00' AND '2021-05-04 20:00:00' Кто то может мне помочь сформировать MySQL запрос чтобы эта формула обработала координаты и выдала общее суммарное расстояние? ... |
|||
:
Нравится:
Не нравится:
|
|||
04.05.2021, 17:33 |
|
Как работать с значением из другой строки, как с столбцом их текущей?
|
|||
---|---|---|---|
#18+
MaNuNa У меня вот похожая задачка Если коротко - сборка всех координат в один объект тип MILTILINE и получение его длины. Spatial Analysis Functions ... |
|||
:
Нравится:
Не нравится:
|
|||
04.05.2021, 19:26 |
|
|
start [/forum/topic.php?fid=47&fpage=9&tid=1828086]: |
0ms |
get settings: |
11ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
72ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
56ms |
get tp. blocked users: |
2ms |
others: | 243ms |
total: | 419ms |
0 / 0 |