Selecionar camada por atributo usando a instrução SQL LEN () no ArcMap?

9

Eu quero consultar o comprimento de uma coluna de string e pensei em usar:

LEN([ColumnName]) > 5

No entanto, isso não funciona. Estou consultando uma tabela em um fGDB no ArcMap 10.1, daí a notação de [ColumnName].

Alguém pode me ajudar?

A mensagem de erro que estou recebendo do ArcGIS é que estou usando uma instrução SQL inválida.

Thomas Becker
fonte

Respostas:

17

Para calcular o comprimento em caracteres de uma expressão de string, use CHAR_LENGTH(string_exp)

Os delimitadores de nome de campo para o geodatabase do arquivo são aspas duplas (não colchetes).

Portanto, isso deve funcionar:

CHAR_LENGTH(“ColumnName“) > 5

Aqui está uma referência SQL para expressões de consulta usadas no ArcGIS .

Jens
fonte
1

E se você adicionar um novo campo à sua tabela chamado, por exemplo, "str_length" e, em seguida, preencher o campo com o comprimento do valor do campo que você deseja?

str_length = len(columnname)

Em seguida, faça sua seleção no novo campo calculado.

raça mista
fonte