Generic selectors
Exact matches only
Search in title
Search in content
Post Type Selectors
podcast
Filter by Categories
ArcGIS Pro
GDAL
GeoJson
Map
Python
QGIS
Uncategorized

The IS Operator In QGIS

How to use the ‘IS’ Operator in QGIS

In QGIS, the IS operator is commonly used in expressions to test for null values or to check the type of a variable.

Working in QGIS? Check out our podcast!

Here’s how you can use the IS operator in different contexts within QGIS:

  1. Checking for NULL Values:
    The IS operator is often used to check if a field or value is NULL. In QGIS expressions, this is typically used in conditional statements or filters. For example, to find features where a specific attribute is null, you might use an expression like:
   "attribute_name" IS NULL

This expression will return true for all features where the attribute attribute_name does not have a value.

  1. Checking for NOT NULL Values:
    Similarly, you can check if a field has a value (is not null) using:
   "attribute_name" IS NOT NULL

This will return true for features where attribute_name has a defined value.

  1. Type Checking:
    QGIS also supports using the IS operator for type checking within its expression engine. This can be particularly useful when writing more complex expressions that depend on variable types. For example:
   @value IS 'string'

This checks whether the variable @value is a string type.

Frequently asked questions about the IS operator in QGIS:

What is the IS operator used for in QGIS?

    In QGIS, the IS operator is primarily used to check whether a field’s value is NULL or to verify the data type of a value. This is particularly useful in data validation, data cleaning, and during the setting up of conditional expressions in thematic mapping or filtering datasets.

    How do I check if a field is NULL using the IS operator?

      To check if a field is NULL, you can use the expression "fieldname" IS NULL. This expression evaluates to true for all features where the specified field (fieldname) does not have a value (i.e., the value is NULL). This is useful in identifying missing data or excluding such data from analysis.

      Can the IS operator be used to compare attribute values for equality?

        No, the IS operator is not suitable for comparing attribute values for equality. It is intended for NULL checks and type testing. To compare attributes for equality, you should use the = operator. For example, "attribute1" = "attribute2" will check if both attributes have the same value.

        How do I use the IS operator to check if a field is not NULL?

          To verify that a field is not NULL, the expression "fieldname" IS NOT NULL is used. This checks that the field has a defined value, and it’s useful when you need to ensure data completeness or when selecting only those features that contain specific information.

          Is it possible to use the IS operator to check the data type of a field in QGIS?

            Yes, you can use the IS operator to perform type checking. For instance, an expression like @value IS 'string' checks whether the variable @value is a string. This is useful when different data processing steps require certain data types to function correctly.

            What are the limitations of the IS operator in QGIS?

              The primary limitation of the IS operator is that it’s only useful for null checks and type checks. It cannot be used for comparing values for equality or relational checks, which are common needs in data analysis. For these purposes, other operators and functions need to be employed.

              Can the IS operator handle complex data types or only primitive types?

                In QGIS, the IS operator is commonly used with primitive types for basic checks like NULL or simple type verifications. Handling complex data types, such as arrays or objects, typically requires more specific functions or methods that are designed to navigate and manipulate such structures.

                Are there any specific scenarios where the IS operator is particularly useful in QGIS?

                  IS operator is particularly useful in scenarios involving data cleaning and preparation. For instance, when preparing a dataset for analysis, ensuring that certain fields are not NULL (using IS NOT NULL) can be crucial for the integrity of the analysis. Similarly, ensuring correct data types before performing calculations or applying functions helps prevent errors and ensures that the GIS operations perform as expected.

                  About the Author
                  I'm Daniel O'Donohue, the voice and creator behind The MapScaping Podcast ( A podcast for the geospatial community ). With a professional background as a geospatial specialist, I've spent years harnessing the power of spatial to unravel the complexities of our world, one layer at a time.