Страница 1 из 2
MapInfo. Работа с запросами.
Добавлено: 19 апр 2016, 19:02
xtxskif
Всем привет.
Нужна помощь.
Как сделать операцию с данными (рис.2).
Например я имею данные в колонке Name, и хочу их разделить так чтобы первая часть данных была записана в колонку Field3, а вторая в колонку Field4. Результат должен бить как на рис.3.
Опишите пожалуйста подробнее как использовать функции Left$(str,num), Mid$(str,num1,num2), Right$(str,num) на данном примере.
Также интересует как это сделать если в рядах находятся данные разной величины но к примеру между ними существует кое-какой символ
(например: 1ряд - "rec-do", 2ряд-"rile-open". В результате хочу увидеть в 1колонка: 1ряд-"rec", 2ряд-"rile"
2колонка: 1ряд-"do", 2ряд-"open" )
Заранее спасибо
MapInfo. Запросы
Добавлено: 20 апр 2016, 15:19
xtxskif
Всем привет.
Помогите решить следующую задачу.
Есть данные в 2 таблицах q1 и q3. Как с помощью запроса или нескольких запросов получить результат как в табл. q2.
(Смотрите рисунок)
Заранее спасибо
Re: MapInfo. Запросы
Добавлено: 20 апр 2016, 17:31
Slinger
Вы создаёте уже 6-ю тему с одним и тем же названием ради одного вопроса про запросы. Может имеет смысл все Ваши вопросы задавать в одной теме ? Ибо они однотипные.
Re: MapInfo. Запросы
Добавлено: 20 апр 2016, 17:55
xtxskif
если лучше задавать однотипные вопроси в одной теме, так это без проблем. Главное чтобы был результат.
[ Сообщение с мобильного устройства ]
Re: MapInfo. Запросы
Добавлено: 20 апр 2016, 17:59
Александр Мурый
xtxskif писал(а):если лучше задавать однотипные вопроси в одной теме, так это без проблем. Главное чтобы был результат.
Вам
тут предельно ясно ответили. Потрудитесь, пож-та, самостоятельно разобраться далее в теме запросов, т.к. они у вас идентичные. Либо ждите ответов в этой теме. Дублирующиеся темы и сообщения будут удаляться. Спасибо за понимание.
Re: MapInfo. Запросы
Добавлено: 20 апр 2016, 23:00
xtxskif
Помогите, также сделать выборку. В колонке таблицы имею много рядов с данными, но есть и много рядов в которых данных нету.
С помощью какой команды я могу сделать выборку в результате которой получу только ряды в которых есть данные?
Просто хочу удалить из таблицы пустые строки.
Спасибо
Re: MapInfo. Запросы
Добавлено: 26 апр 2016, 01:43
xtxskif
del
Re: MapInfo. Запросы
Добавлено: 26 апр 2016, 10:51
xtxskif
Вопрос с объединением таблиц решил. Ответ на картинке. Спасибо всем кто питался помочь
Re: MapInfo. Запросы
Добавлено: 03 июн 2016, 16:26
xtxskif
Привет всем. Ломаю голову над новой задачей. Нужна ваша помощь.
Есть полилинии между 3 точками (см. рисунок). На них есть несколько препятствий (a,s,x,c v).
Как посчитать сколько препятствий на каждой полилинии(1-2,1-3,2-3)?
Заранее спасибо
Re: MapInfo. Запросы
Добавлено: 04 июн 2016, 21:33
Boris
С помощью запросов - никак.
Re: MapInfo. Запросы
Добавлено: 05 июн 2016, 15:20
xtxskif
а как можно это сделать?
Re: MapInfo. Запросы
Добавлено: 05 июн 2016, 16:22
Игорь Белов
Можно:

- SQL запрос
- query.png (5.83 КБ) 7029 просмотров
Работает, если препятствия совпадают с узлами полилиний от слова абсолютно. Иначе строим буферы вокруг полилиний и работаем с полигонами.
Re: MapInfo. Запросы
Добавлено: 05 июн 2016, 17:56
Boris
ErnieBoyd писал(а):Можно:
query.png
Работает, если препятствия совпадают с узлами полилиний от слова абсолютно. Иначе строим буферы вокруг полилиний и работаем с полигонами.
Хм... Это конечно решение задачи, если вы верно поняли автора, и там ТРИ полинии, каждая из которых соединяет точку (1/2/3) только с противоположной точкой (1/2/3). Я в рисунке увидел полинию типа "звезда" на разных концах которой лежат точки, а путь между ними не выделен. В этом случае запрос будет возвращать общее количество препятствий принадлежащих данной "звезде".
И если вы правы, то я обычно строю буферы вокруг точек, что бы они гарантированно пересекли линию. Так выше производительность запросов.
Re: MapInfo. Запросы
Добавлено: 06 июн 2016, 11:03
xtxskif
Объясните как решить задачу с помощью буферов. Так как существуют точки которые находятся около полилиний.
Спасибо
Re: MapInfo. Запросы
Добавлено: 06 июн 2016, 14:30
Boris
xtxskif писал(а):Объясните как решить задачу с помощью буферов. Так как существуют точки которые находятся около полилиний.
Спасибо
Надо к каждой точке или каждой полилинии построить буфер с радиусом гарантированно большим чем максимальное расстояние от точки до линии. Тогда операторы "Intesect" "Within" будут работать. Буферы можно построить через Update запрос и функцию
Buffer( inputobject, resolution, width, unit_name ) или через выделение объектов и команду "Буфер" из Меню "Объекты". В последнем случае в карте должен быть редактируемый слой, в котрый и будут записаны "буфера".