Mediante la opción “Select by Attributes” se puede realizar una consulta o seleccionar aquellos elementos de un Feature que cumple una determinada condición. Seleccionar por atributos es muy parecidos a la consulta definida en el artículo Definiendo un Query en ArcGis, la diferencia está en que al aplicar Select by Attributes” solo se resaltan los elementos seleccionados sin desaparecer los que no cumplen la condición. La consulta realizada se puede guardar, una vez construida, a través del botón “Save”, luego la podremos recuperar usando el botón “Load”, botones localizados en la parte inferior de la ventana.
Para realizar la consulta se utiliza el lenguaje SQL (Structured Query Language). La notación en este caso es la siguiente:
SELECT * FROM [Feature o tabla] WHERE [condición] que significa “selecciona los objetos (o registros) del Feature (o tabla) llamado [Feature] que cumplan la condición [condición]”. La condición es una expresión lógica cuyo resultado es verdadero o falso y está compuesta por campos, operadores y valores. Por ejemplo
Expresión | Resultado |
SELECT * FROM Pozos WHERE Municipio = Apartadó | Seleccionará del Feature Pozos aquellos elementos cuyo valor del campo Municipio sea igual a Apartadó |
SELECT * FROM Pozos WHERE Municipio <> Apartadó | Seleccionará del Feature Pozos aquellos elementos cuyo valor del campo Municipio sea diferente a Apartadó |
SELECT * FROM Pozos WHERE Municipio = “Apartadó” And Litología = “Si” | Seleccionará del Feature Pozos aquellos elementos localizados en el municipio de Apartadó (campo Municipio) y que además tengan litología (valor “Si” del campo litología). Esta última expresión es la que vamos a implementar en el presente ejercicio |
Para ilustrar la realización de una consulta por atributos ArcGis utilizaremos el shape de pozos existentes en el acuífero del golfo de Urabá, tal como se muestra continuación.
Paso 1. Vamos al menú Selection escogemos la opción Select By Attributes...
Nos aparece la ventana Select By Attributes, compuesta por las siguientes partes.
- Layer: La capa a la cual le vamos a aplicar la consulta.
- Method: crear una seleccion, seleccionar sobre lo ya seleccionado…
- Campos: Campos para realizar la selección, Aparecerán todos los campos que contiene el Feature seleccionado.
- Get Unique values: En esta parte aparecerán los valores o tributos del campo seleccionado
- Select from: recuadro para escribir las condiciones para realizar la selección.
Paso 2. Escribimos la expresión SELECT * FROM [Pozos] WHERE Municipio = “Apartadó” And Litología = “Si”. Procedemos de la siguiente forma.
- En la pestaña Layer, Selecionamos Pozos.
- Buscamos el campo Municipio y damos doble clic para que se agregue debajo de Select*from.
- Oprimimos el botón “=”.
- Damos clic en el botón Get Unique Values y de los atributos que aparecen seleccionamos “Apartadó”.
Veremos lo siguiente.
Si deseamos ver el resultado parcial damos clic en el botón Apply, se mostrarán todos los pozos localizados en el municipio de Apartadó. Pero aun falta saber cuales de ellos tienen Litología
Como la ventana Select By Attributes sigue visible, construimos la segunda parte de la consulta de la siguiente forma.
- Clic en el botón And
- Buscamos el campo Litología y damos doble clic sobre el mismo para agregarlo debajo de Select*from.
- Oprimimos el botón “=”.
- Damos clic en el botón Get Unique Values y de los atributos que aparecen seleccionamos “Si”.
La ventana se verá como sigue.
Clic en Ok para ver el resultado final de la consulta. Veremos seleccionados aquellos pozos que están localizados en el municipio de Apartadó y además tienen Litología.
MUY INTERESANTE GRACIAS POR LA INFORMACIÓN
ResponderEliminarLos amo, no saben cuanto me han ayudado !!!!
ResponderEliminarGracias por tu comentario
EliminarSaben como pasar atributos de dos objetos por ejemplo de una linea de un shape a otra linea??? estoy tratando de programarlo en VB.Net ayuda porfa!!
ResponderEliminarAbraham, lamentablemente aun no manejo programación vba para arcgis... pero es algo que tengo presente
EliminarEste comentario ha sido eliminado por un administrador del blog.
EliminarHola turin11, gracias por tu aporte y por tu continua participación en el blog, en verdad me agrada mucho. No obstante, la finalidad del blog no admite la piratería. Podemos agregar todo tipo de enlaces siempre y cuando no violen los derechos de autor. Gracias una vez mas pero debo borrar el enlace colocado.
EliminarGracias, me ayudó de mucho tu explicación
ResponderEliminarQue tal, en primer lugar muchas felicidades por este sitio web, es de mucha ayuda para nosotros los que nos manejamos en el tema SIG, mi duda es en el tema Selección por atributos: Necesito buscar de un SHP, Escribi la expresión SELECT * FROM [Rios] WHERE Name = “Rio Azul” .. pero al mismo tiempo necesito seleccionar otros rios al mismo tiempo para no hacerlo uno por uno, como se puede hacer?
ResponderEliminarEste comentario ha sido eliminado por el autor.
ResponderEliminarHola como puedo seleccionar sitios con especificaciones de suelo, clima, vegetación, pendiente y exposición?
ResponderEliminarHola!, no me es clara tu pregunta, no ahorres palabras en explicar para que podemos ayudarte. saludos
EliminarHola! quiero hacer algo parecido a lo que se muestra arriba, tengo un mapa geológico formado por polígonos. Quiero calcular la superficie de cada una de las series geológicas de mi mapa ( que están formadas cada una por diversos polígonos). Para ello cuento con un campo en el que se encuentra diferenciados todos los polígonos que forman el mapa según la serie geológica a la que pertenecen (hay grupos de polígonos que pertenecen a las mismas series geológicas), también cuento con otro campo que contiene la superficie de cada uno de los polígonos. Bien pues quisiera saber qué superficie ocupa cada serie geológica en mi mapa y no se como hacerlo.Si me pudiesen ayudar. Millones de gracias de antemano! Saludos
EliminarHola Maritik, despues de aplicar y seleccionar los poligonos que comparten el mismo atributo (serie geológica), depues abres la tabla de atributos (alli ves los registros seleccionados). despues de ello das clic derecho sobre el campo donde tienes las áreas y alli seleccionas la opción Statistics, te aparecerá una ventana con varios calculos, entre ellos la sumatoria de la áreas
EliminarMuchas gracias Pedro! al final mientras esperaba la respuesta di con la manera de hacerlo aunque no fue así he probado a hacerlo como tú me indicas y obtengo el mismo resultado. Yo lo hice con summarize seleccionando el campo de las series geológicas en la casilla nº1 y el campo de las áreas en la casilla nº2 y desplegando el menú de la izq donde también se encuentra las mismas operaciones estadísticas en que la opción statistics. Se obtiene la misma información aunque de manera distinta ya que de la forma que conseguí hacerlo se crea un campo en la tabla de atributos. Has sido muy amable respondiéndome tan rápido, te lo agradezco de veras. Me parece un blog magnífico! soy novata en esto así que hablaremos pronto seguro! saludos!
ResponderEliminarQue tal amigo, me gustaría saber si se puede lo siguiente:
ResponderEliminarTengo un shape en el cual tengo registrado un n numero de cuentas, y me solicitan via Excel x decir 50 cuentas, pueda realizar una búsqueda masiva?, o debo realizarlo una x una?
De antemano muchas gracias.
Hola estimado, una consulta. ¿Sabes que sentencia SQL se debe usar para seleccionar el valor máximo o mínimo de una tabla de atributos? Por ejemplo: tengo un shape de lotes y quisiera seleccionar el lote de mayor y menor área mediante una sentencia SQL.
ResponderEliminarSaludos y gracias
LOGRASTE SOLUCIONARLO ESTOY CON EL MISMO PROBLEMA
EliminarTengo la misma inquietud. Lograron solucionarlo?
EliminarHOLA.
ResponderEliminarOYE COMO UNO PUEDES HACER UNA SELECCION DE POLIGONOS QUE SE ENCUENTREN EN UN RANGO DE DOS AREAS.
buenas noches,, pero si quiero agregar un campo mas, por ejemplo agregar una consulta sql, osea tres.. como seria?
ResponderEliminarAlguien que conozca como puedo seleccionar en un mismo campo de una tabla en un shape una parte del texto???
ResponderEliminarhola si quiero seleccionar dos o mas caracteristicas de un atributo
ResponderEliminarejemplo uso de suelo que sea agricultura y bosque
Hola, cuando se requiere seleccionar un rango de valores como se pone la expresión.
ResponderEliminar