Что никак не найду внятного ответа - имеются ли в ArcGIS запросы в том виде как они понимаются в стандарте языка SQL?
В частности:
а) выбор части атрибутивных данных (столбцов) без утраты связи с исходными данными?
б) создание вычисляемых полей без создания "физических" полей?
в) создание новых "виртуальных" данных путем установления связей и т.п. между двумя и более таблицами (или как там правильно называют объекты геобазы или SHP)?
Подскажите пожалуйста!
ArcGIS и запросы
-
- Гуру
- Сообщения: 4231
- Зарегистрирован: 10 апр 2006, 22:34
- Репутация: -344969098
- Откуда: Париж
-
- Гуру
- Сообщения: 852
- Зарегистрирован: 15 сен 2005, 13:19
- Репутация: 6
- Откуда: москва
- Контактная информация:
Re: ArcGIS и запросы
Запрос к внешней базе или к таблице внутри? Это разные вещи. Наружу можно отправить кучу всякого: "personal and ArcSDE geodatabases support many additional features and functions not mentioned in this topic. For information on those, refer to your database management system (DBMS) documentation". Внутри - только WHERE в пределах одной табл, чисто фильтрация. Чтобы объединить, джойнить надо. Кажется, подзапрос еще - это в хелпе в общем, внятно изложено.
Apropos, как с этим же в Мапинфо?
Apropos, как с этим же в Мапинфо?
-
- Гуру
- Сообщения: 4231
- Зарегистрирован: 10 апр 2006, 22:34
- Репутация: -344969098
- Откуда: Париж
Re: ArcGIS и запросы
В MapInfo есть "почти НЕ" полноценный запрос в формате SQL. Работает на сильно урезанном подмножестве SQL, дополненном пространственными операторами. Позволяет:
а) производить выборку WHERE
б) выбирать все (*) или только некоторые столбцы или любые вычисляемые поля-операторы и функции из MapBasic
в) производить группировку и упорядочивание по любой комбинации столбцов
г) выполнять для ДВУХ (не больше и не меньше) таблиц пространственные операции отбора и объединения атрибутов - геометрия берется от первой таблицы, атрибуты - любая комбинация от двух исходных таблиц
д) выполнять простейший вложенный SELECT - ANY
е) объединять две таблицы на основании атрибутивных данных (правда геометрия берется только от первой таблицы)
---
В отличии от скажем Geomedia, MI создает запросы - мгновенные снимки состояния таблиц. В запросах может меняться геометрия, атрибутика при их изменении в исходных таблицах, но состав записей запроса при этом не меняется. Отобранные записи - фиксируются жестко, скорее всего посредством отбора по внутреннему скрытому уникальному идентификатору. В GM, на пример, запросы - меняют и состав и данные при любом изменении исходных таблиц. В этом плане GM более SQL-приближен.
а) производить выборку WHERE
б) выбирать все (*) или только некоторые столбцы или любые вычисляемые поля-операторы и функции из MapBasic
в) производить группировку и упорядочивание по любой комбинации столбцов
г) выполнять для ДВУХ (не больше и не меньше) таблиц пространственные операции отбора и объединения атрибутов - геометрия берется от первой таблицы, атрибуты - любая комбинация от двух исходных таблиц
д) выполнять простейший вложенный SELECT - ANY
е) объединять две таблицы на основании атрибутивных данных (правда геометрия берется только от первой таблицы)
---
В отличии от скажем Geomedia, MI создает запросы - мгновенные снимки состояния таблиц. В запросах может меняться геометрия, атрибутика при их изменении в исходных таблицах, но состав записей запроса при этом не меняется. Отобранные записи - фиксируются жестко, скорее всего посредством отбора по внутреннему скрытому уникальному идентификатору. В GM, на пример, запросы - меняют и состав и данные при любом изменении исходных таблиц. В этом плане GM более SQL-приближен.
-
- Новоприбывший
- Сообщения: 11
- Зарегистрирован: 09 апр 2009, 11:10
- Репутация: 0
Re: ArcGIS и запросы
Помогите, плиз. У меня есть набор точечных данных. В таблице к нему есть колонка Nomer. Каждой из точек присвоен свой порядковый от 1 до 3500 в этой колонке. Мне необходимо сделать выборку точек, например выбрать точки с номерами 1, 87, 985 и т.д. Никак не могу составить правильный SQL-запрос ни в ArcMap 9.3 ни в MapInfo. Или пишет, что синтаксическая ошибка или выбирает только одну из всех введенных, как правило первую введенную точку. Спасибо.
- SS_Rebelious
- Гуру
- Сообщения: 1304
- Зарегистрирован: 24 фев 2009, 16:51
- Репутация: 99
- Ваше звание: GIS pro-fan
- Откуда: Lahti / Газ-ПУТИНбург
- Контактная информация:
Re: ArcGIS и запросы
Что касается мапинфо, то просто для выбора пользуйтесь функцией select/выбрать (находится над SQL-запросом). В появившемся меню выбираете нужную таблицу, а в поле для выражения забиваете Nomer="1" or Nomer="87" or Nomer="985" (кавычки ставятся или не ставятся в зависимости от типа данных в колонке). Аналогично можно составить и для SQL.VasBul писал(а):Никак не могу составить правильный SQL-запрос ни в ArcMap 9.3 ни в MapInfo
P.S. Вам следовало бы написать какого вида SQL-запрос в составляете для той и для другой программы.
Look for something long enough, and you will find it. Look for something without understanding, and it will find you...
"All paid jobs absorb and degrade the mind." Aristotle
If you take 1 step towards freedom it'll take 2 steps towards you!
"All paid jobs absorb and degrade the mind." Aristotle
If you take 1 step towards freedom it'll take 2 steps towards you!
-
- Активный участник
- Сообщения: 184
- Зарегистрирован: 15 сен 2006, 16:15
- Репутация: 10
- Откуда: Москва
Re: ArcGIS и запросы
в АркГИС можно использовать ([nomer]=1 or [nomer]=44 ... ) или [nomer] in ( 68 , 72 )
используйте построитель выражений, чтобы правильно написать название поля [field] для базы геоданных, "field" для шейп-файлов
используйте построитель выражений, чтобы правильно написать название поля [field] для базы геоданных, "field" для шейп-файлов
-
- Новоприбывший
- Сообщения: 11
- Зарегистрирован: 09 апр 2009, 11:10
- Репутация: 0
Re: ArcGIS и запросы
Большое спасибо Mitrich и SS_Rebelious за отклик. Ваша помощь для меня неоценима! Теперь работа закипит. Это очень важный для меня проект. Еще раз выражаю Вам свою благодарность за оказанную мне помощь!
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя