Skip to content

Last updated: July 22, 2025

Column list or order changed data quality checks, SQL examples

A table-level check that detects if the list of columns and the order of columns have changed since the last time the check was run. This check will retrieve the metadata of a tested table and calculate a hash of the column names. The hash will depend on the order of columns. A data quality issue will be detected if new columns were added, columns that existed during the previous test were dropped or the columns were reordered.


The column list or order changed data quality check has the following variants for each type of data quality checks supported by DQOps.

profile column list or order changed

Check description

Detects if new columns were added, existing columns were removed or the columns were reordered. Retrieves the metadata of the monitored table and calculates an ordered hash of the column names. Compares the current hash to the previously known hash to detect any changes to the list of columns or their order.

Data quality check name Friendly name Category Check type Time scale Quality dimension Sensor definition Quality rule Standard
profile_column_list_or_order_changed Detect if the column list or order has changed schema profiling Consistency column_list_ordered_hash value_changed

Command-line examples

Please expand the section below to see the DQOps command-line examples to run or activate the profile column list or order changed data quality check.

Managing profile column list or order changed check from DQOps shell

Activate this data quality using the check activate CLI command, providing the connection name, table name, check name, and all other filters. Activates the warning rule with the default parameters.

dqo> check activate -c=connection_name -t=schema_name.table_name  -ch=profile_column_list_or_order_changed --enable-warning

You can also use patterns to activate the check on all matching tables and columns.

dqo> check activate -c=connection_name -t=schema_prefix*.fact_*  -ch=profile_column_list_or_order_changed --enable-warning

Activate this data quality using the check activate CLI command, providing the connection name, table name, check name, and all other filters. Activates the error rule with the default parameters.

dqo> check activate -c=connection_name -t=schema_name.table_name  -ch=profile_column_list_or_order_changed --enable-error

You can also use patterns to activate the check on all matching tables and columns.

dqo> check activate -c=connection_name -t=schema_prefix*.fact_*  -ch=profile_column_list_or_order_changed --enable-error

Run this data quality check using the check run CLI command by providing the check name and all other targeting filters. The following example shows how to run the profile_column_list_or_order_changed check on all tables on a single data source.

dqo> check run -c=data_source_name -ch=profile_column_list_or_order_changed

It is also possible to run this check on a specific connection and table. In order to do this, use the connection name and the full table name parameters.

dqo> check run -c=connection_name -t=schema_name.table_name -ch=profile_column_list_or_order_changed

You can also run this check on all tables on which the profile_column_list_or_order_changed check is enabled using patterns to find tables.

dqo> check run -c=connection_name -t=schema_prefix*.fact_*  -ch=profile_column_list_or_order_changed

YAML configuration

The sample schema_name.table_name.dqotable.yaml file with the check configured is shown below.

# yaml-language-server: $schema=https://cloud.dqops.com/dqo-yaml-schema/TableYaml-schema.json
apiVersion: dqo/v1
kind: table
spec:
  profiling_checks:
    schema:
      profile_column_list_or_order_changed:
        error: {}
  columns: {}
Samples of generated SQL queries for each data source type

Please expand the database engine name section to see the SQL query rendered by a Jinja2 template for the column_list_ordered_hash data quality sensor.


daily column list or order changed

Check description

Detects if new columns were added, existing columns were removed or the columns were reordered since the most recent day. Retrieves the metadata of the monitored table and calculates an ordered hash of the column names. Compares the current hash to the previously known hash to detect any changes to the list of columns or their order.

Data quality check name Friendly name Category Check type Time scale Quality dimension Sensor definition Quality rule Standard
daily_column_list_or_order_changed Detect if the column list or order has changed schema monitoring daily Consistency column_list_ordered_hash value_changed

Command-line examples

Please expand the section below to see the DQOps command-line examples to run or activate the daily column list or order changed data quality check.

Managing daily column list or order changed check from DQOps shell

Activate this data quality using the check activate CLI command, providing the connection name, table name, check name, and all other filters. Activates the warning rule with the default parameters.

dqo> check activate -c=connection_name -t=schema_name.table_name  -ch=daily_column_list_or_order_changed --enable-warning

You can also use patterns to activate the check on all matching tables and columns.

dqo> check activate -c=connection_name -t=schema_prefix*.fact_*  -ch=daily_column_list_or_order_changed --enable-warning

Activate this data quality using the check activate CLI command, providing the connection name, table name, check name, and all other filters. Activates the error rule with the default parameters.

dqo> check activate -c=connection_name -t=schema_name.table_name  -ch=daily_column_list_or_order_changed --enable-error

You can also use patterns to activate the check on all matching tables and columns.

dqo> check activate -c=connection_name -t=schema_prefix*.fact_*  -ch=daily_column_list_or_order_changed --enable-error

Run this data quality check using the check run CLI command by providing the check name and all other targeting filters. The following example shows how to run the daily_column_list_or_order_changed check on all tables on a single data source.

dqo> check run -c=data_source_name -ch=daily_column_list_or_order_changed

It is also possible to run this check on a specific connection and table. In order to do this, use the connection name and the full table name parameters.

dqo> check run -c=connection_name -t=schema_name.table_name -ch=daily_column_list_or_order_changed

You can also run this check on all tables on which the daily_column_list_or_order_changed check is enabled using patterns to find tables.

dqo> check run -c=connection_name -t=schema_prefix*.fact_*  -ch=daily_column_list_or_order_changed

YAML configuration

The sample schema_name.table_name.dqotable.yaml file with the check configured is shown below.

# yaml-language-server: $schema=https://cloud.dqops.com/dqo-yaml-schema/TableYaml-schema.json
apiVersion: dqo/v1
kind: table
spec:
  monitoring_checks:
    daily:
      schema:
        daily_column_list_or_order_changed:
          error: {}
  columns: {}
Samples of generated SQL queries for each data source type

Please expand the database engine name section to see the SQL query rendered by a Jinja2 template for the column_list_ordered_hash data quality sensor.


monthly column list or order changed

Check description

Detects if new columns were added, existing columns were removed or the columns were reordered since the last month. Retrieves the metadata of the monitored table and calculates an ordered hash of the column names. Compares the current hash to the previously known hash to detect any changes to the list of columns or their order.

Data quality check name Friendly name Category Check type Time scale Quality dimension Sensor definition Quality rule Standard
monthly_column_list_or_order_changed Detect if the column list or order has changed schema monitoring monthly Consistency column_list_ordered_hash value_changed

Command-line examples

Please expand the section below to see the DQOps command-line examples to run or activate the monthly column list or order changed data quality check.

Managing monthly column list or order changed check from DQOps shell

Activate this data quality using the check activate CLI command, providing the connection name, table name, check name, and all other filters. Activates the warning rule with the default parameters.

dqo> check activate -c=connection_name -t=schema_name.table_name  -ch=monthly_column_list_or_order_changed --enable-warning

You can also use patterns to activate the check on all matching tables and columns.

dqo> check activate -c=connection_name -t=schema_prefix*.fact_*  -ch=monthly_column_list_or_order_changed --enable-warning

Activate this data quality using the check activate CLI command, providing the connection name, table name, check name, and all other filters. Activates the error rule with the default parameters.

dqo> check activate -c=connection_name -t=schema_name.table_name  -ch=monthly_column_list_or_order_changed --enable-error

You can also use patterns to activate the check on all matching tables and columns.

dqo> check activate -c=connection_name -t=schema_prefix*.fact_*  -ch=monthly_column_list_or_order_changed --enable-error

Run this data quality check using the check run CLI command by providing the check name and all other targeting filters. The following example shows how to run the monthly_column_list_or_order_changed check on all tables on a single data source.

dqo> check run -c=data_source_name -ch=monthly_column_list_or_order_changed

It is also possible to run this check on a specific connection and table. In order to do this, use the connection name and the full table name parameters.

dqo> check run -c=connection_name -t=schema_name.table_name -ch=monthly_column_list_or_order_changed

You can also run this check on all tables on which the monthly_column_list_or_order_changed check is enabled using patterns to find tables.

dqo> check run -c=connection_name -t=schema_prefix*.fact_*  -ch=monthly_column_list_or_order_changed

YAML configuration

The sample schema_name.table_name.dqotable.yaml file with the check configured is shown below.

# yaml-language-server: $schema=https://cloud.dqops.com/dqo-yaml-schema/TableYaml-schema.json
apiVersion: dqo/v1
kind: table
spec:
  monitoring_checks:
    monthly:
      schema:
        monthly_column_list_or_order_changed:
          error: {}
  columns: {}
Samples of generated SQL queries for each data source type

Please expand the database engine name section to see the SQL query rendered by a Jinja2 template for the column_list_ordered_hash data quality sensor.


What's next