Выбрать слой по атрибуту с помощью оператора SQL LEN () в ArcMap?


9

Я хочу запросить длину столбца строки и подумал использовать:

LEN([ColumnName]) > 5

Тем не менее, это не работает вообще. Я запрашиваю таблицу в fGDB в ArcMap 10.1, отсюда и обозначение [ColumnName].

Кто-нибудь может мне помочь?

Сообщение об ошибке, которое я получаю от ArcGIS, заключается в том, что я использую недопустимый оператор SQL.

Ответы:


17

Для вычисления длины в символах строкового выражения используйте CHAR_LENGTH(string_exp)

Разделителями имен полей для файловой базы геоданных являются двойные кавычки (не квадратные скобки).

Так что это должно работать:

CHAR_LENGTH(“ColumnName“) > 5

Вот ссылка на SQL для выражений запросов, используемых в ArcGIS .


1

Что если вы добавите в свою таблицу новое поле с именем, например, «str_length», а затем заполните его значением длины нужного вам поля?

str_length = len(columnname)

Затем сделайте свой выбор на новом рассчитанном поле.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.