Ces exemples montrent comment configurer vos règles SQL.
Vous pouvez copier les instructions SQL fournies dans vos propres règles de qualité de données et les ajuster si nécessaire.
L'adresse n'existe pas
Renvoie l'ID client et le nom de tous les enregistrements pour lesquels une adresse n'existe pas (vérification de valeur nulle et vide).
select CLIENT_ID, NAME from SCHEMA.CUSTOMERS where ADDRESS is null or length(trim(ADDRESS))=0
Le type d'adresse est manquant ou ne figure pas dans la liste de références
Renvoie l'ID client et le nom de tous les enregistrements pour lesquels un type d'adresse n'existe pas (vérification des valeurs nulles et non renseignées) ou ne figure pas dans la liste de référence.
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')
L'âge est en dehors de la plage
Renvoie l'ID client et le nom de tous les enregistrements dont l'âge dérivé est inférieur à la valeur AGE ou supérieur à 125. L'âge calculé est la valeur absolue de la différence entre la date en cours et la date de naissance.
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
État matrimonial incorrect des enfants
Renvoie l'ID client et le nom de tous les enregistrements dans lesquels la personne est un enfant (l'âge dérivé est inférieur à 18 ans) et où l'état civil n'est pas non. L'âge calculé est la valeur absolue de la différence entre la date en cours et la date de naissance.
select CLIENT_ID, NAME from SCHEMA.CUSTOMERS where abs(DAYS(CURRENT DATE) - DAYS(DATEOFBIRTH))/365 < 18 AND MARITAL_STATUS <> 'N'
Le numéro de carte de crédit ne correspond pas au format
Renvoie l'ID client et le nom de tous les enregistrements pour lesquels le numéro de carte de crédit ne correspond pas au format spécifié.
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})$')
Le numéro de sécurité sociale ne correspond pas au format
Renvoie l'ID client et le nom de tous les enregistrements pour lesquels un numéro de sécurité sociale (SSN) ne correspond pas au format spécifié.
select CLIENT_ID, NAME from SCHEMA.CUSTOMERS where NOT regexp_like(SSN, '^[0-9]{3}-[0-9]{2}-[0-9]{4}$')
La sous-chaîne ne correspond pas aux entrées de la liste de références
Renvoie l'ID client et le nom de tous les enregistrements où la sous-chaîne d'une valeur texte commençant à la position 3 pour la longueur 3 ne figure pas dans la liste de référence fournie.
select CLIENT_ID, NAME from SCHEMA.CUSTOMERS where substring(TEXTFIELD, 3, 3) not in ('AAA','AAB','BAA','CCC')
Rubrique parent: Création de règles de qualité de données SQL