Está en la página 1de 5

Expresiones condicionales en QGIS

cursosgis.com/expresiones-condicionales-en-qgis

June 29, 2018

Una de las posibilidades que nos ofrece el constructor de expresiones de QGIS es emplear
funciones condicionales.

Podemos acceder al “Constructor de Expresiones” mediante diversas vías, como es el


caso del etiquetado HTML del compositor de mapas (1), la definición de ciertos parámetros
como el Etiquetado (2)(3) o la calculadora de campos (4) entre otros muchos casos.

Existen varias funciones condicionales, una de las más empleadas es la función CASE que
evalúa una sentencia condicional y en caso de cumplirse la condición nos devuelve el
resultado especificado.

La expresión sigue el siguiente esquema:

CASE
WHEN condición THEN resultado 1
ELSE resultado 2
END

1/5
Los argumentos CASE y END encierran la expresión condicional, indicando
respectivamente el inicio y final de la función.
El argumento WHEN precede a la sentencia condicional que se va a evaluar.
El argumento THEN precede al valor que se devuelve en caso de cumplir la condición.
La instrucción ELSE es opcional, pero nos permite indicar el valor que toman el resto de
las entidades que no cumplen la sentencia condicional.

Es posible concatenar varias sentencias condicionales.

CASE

WHEN condición 1 THEN resultado 1


WHEN condición 2 THEN resultado 2
WHEN condición 3 THEN resultado 3

END

En el siguiente ejemplo podemos comprobar cómo funciona la expresión CASE. Partiendo


de una capa de núcleos de población, en la que tenemos un campo “Población” que nos
indica el número de habitantes, queremos clasificar los núcleos de población en 3
categorías:

– Pequeños: Núcleos de población con menos de 5000 habitantes.


– Medianos: Núcleos de Población entre 5000 y 20000 habitantes.
– Grandes: Núcleos de Población con más de 20000 habitantes.

Para llevar a cabo esta clasificación por medio de la calculadora de campos empleamos la
sentencia:

CASE

WHEN “POBLACION” <= 5000 THEN ‘Pequeños’


WHEN (“POBLACION” > 5000 AND “POBLACION” <= 20000) THEN ‘Medianos’
WHEN “POBLACION” > 20000 THEN ‘Grandes’

END

2/5
Finalmente podemos observar se produce una clasificación de los núcleos de población
aplicando una función condicional.

3/5
4/5
5/5

También podría gustarte