Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
Виктория
Зарегистрирован: 02.02.2010 Сообщения: 3
|
Добавлено: Вт Фев 02, 2010 2:04 pm Заголовок сообщения: Выбрать полилинии, состоящие из двух узлов |
|
|
Здравствуйте! Есть задача выбрать из большого количества полилиний только те, которые состоят из двух узлов. Подскажите реализацию. Спасибо. |
|
Вернуться к началу |
|
|
FedorinoFF
Зарегистрирован: 01.02.2007 Сообщения: 272 Откуда: Санкт-Петербург
|
Добавлено: Вт Фев 02, 2010 4:21 pm Заголовок сообщения: |
|
|
Выполнить запрос в окне Mapbasic:
select * from имятаблицы where int(ObjectInfo(obj,1)) = 4 and int(ObjectInfo(obj,20)) = 2 |
|
Вернуться к началу |
|
|
Виктория
Зарегистрирован: 02.02.2010 Сообщения: 3
|
Добавлено: Вт Фев 02, 2010 4:34 pm Заголовок сообщения: |
|
|
пишет
ObjectInfo: аргумент 2 вышел за заданные пределы
и ничего не выбирает |
|
Вернуться к началу |
|
|
FedorinoFF
Зарегистрирован: 01.02.2007 Сообщения: 272 Откуда: Санкт-Петербург
|
Добавлено: Вт Фев 02, 2010 5:24 pm Заголовок сообщения: |
|
|
1. попробуйте предварительно упаковать таблицу.
или
2. выполнить два запроса последовательно
select * from имятаблицы where int(ObjectInfo(obj,1)) = 4 into tblPolyline
select * from tblPolyline where int(ObjectInfo(obj,20)) = 2
первый запрос выбирает только полилинии,
а второй - выбирает полилинии из двух узлов |
|
Вернуться к началу |
|
|
Виктория
Зарегистрирован: 02.02.2010 Сообщения: 3
|
Добавлено: Вт Фев 02, 2010 5:49 pm Заголовок сообщения: |
|
|
Большое спасибо, упаковка таблицы помогла. |
|
Вернуться к началу |
|
|
|