0 / 0
Volver a la versión inglesa de la documentación
Sentencias SQL de ejemplo para reglas de calidad de datos
Última actualización: 07 oct 2024
Sentencias SQL de ejemplo para reglas de calidad de datos

Estos ejemplos muestran cómo puede configurar las reglas SQL.

Puede copiar las sentencias SQL proporcionadas en sus propias reglas de calidad de datos y ajustarlas según sea necesario.

La dirección no existe

Devuelve el ID de cliente y el nombre de todos los registros en los que no existe una dirección (comprobación de valor nulo y en blanco).

select CLIENT_ID, NAME from SCHEMA.CUSTOMERS where ADDRESS is null or length(trim(ADDRESS))=0

Falta el tipo de dirección o no está en la lista de referencia

Devuelve el ID de cliente y el nombre de todos los registros en los que no existe un tipo de dirección (comprobación de valor nulo y en blanco) o no está en la lista de referencia.

select CLIENT_ID, NAME from SCHEMA.CUSTOMERS where ADDRESSTYPE is null or length(trim(ADDRESSTYPE))=0 or rtrim(ADDRESSTYPE) not in ('S','R','B','L','G','U','O')

La edad está fuera del rango

Devuelve el ID de cliente y el nombre de todos los registros en los que la edad derivada es menor que el valor AGE o es mayor que 125. La edad derivada se calcula como el valor absoluto de la diferencia entre la fecha actual y la fecha de nacimiento.

select CLIENT_ID, NAME from SCHEMA.CUSTOMERS where abs(DAYS(CURRENT DATE) - DAYS(DATEOFBIRTH))/365 < AGE OR abs(DAYS(CURRENT DATE) - DAYS(DATEOFBIRTH))/365 > 125

Estado civil incorrecto de los hijos

Devuelve el ID de cliente y el nombre de todos los registros en los que la persona es un hijo (la edad derivada por debajo de 18 años) y el estado civil no es no. La edad derivada se calcula como el valor absoluto de la diferencia entre la fecha actual y la fecha de nacimiento.

select CLIENT_ID, NAME from SCHEMA.CUSTOMERS where abs(DAYS(CURRENT DATE) - DAYS(DATEOFBIRTH))/365 < 18 AND MARITAL_STATUS <> 'N'

El número de tarjeta de crédito no coincide con el formato

Devuelve el ID de cliente y el nombre de todos los registros en los que el número de tarjeta de crédito no coincide con el formato especificado.

select CLIENT_ID, NAME from SCHEMA.CUSTOMERS where NOT regexp_like(CREDIT_CARD, '^(?:4[0-9]{12}(?:[0-9]{3})?|5[1-5][0-9]{14}|6(?:011|5[0-9][0-9])[0-9]{12}|6(?:22|4[4-9])[0-9]{13}|65[0-9]{14}|3[47][0-9]{13}|3(?:0[0-5]|[68][0-9])[0-9]{11}|(?:2131|1800|35\\d{3})\\d{11})$')

El SSN no coincide con el formato

Devuelve el ID de cliente y el nombre de todos los registros en los que un número de seguridad social (SSN) no coincide con el formato especificado.

select CLIENT_ID, NAME from SCHEMA.CUSTOMERS where NOT regexp_like(SSN, '^[0-9]{3}-[0-9]{2}-[0-9]{4}$')

La subserie no coincide con las entradas de la lista de referencia

Devuelve el ID de cliente y el nombre de todos los registros en los que la subserie de un valor de texto que empieza en la posición 3 para la longitud 3 no está en la lista de referencia proporcionada.

select CLIENT_ID, NAME from SCHEMA.CUSTOMERS where substring(TEXTFIELD, 3, 3) not in ('AAA','AAB','BAA','CCC')

Tema padre: Creación de reglas de calidad de datos basadas en SQL

Búsqueda y respuesta de IA generativa
Estas respuestas las genera un modelo de lenguaje grande en watsonx.ai que se basa en el contenido de la documentación del producto. Más información