Problems / Validate Data Quality / Editorial
Data validation flags are useful for auditing data quality before further processing.
Combine all validity rules into a single CASE WHEN with AND:
CASE WHEN
AND
```sql
CASE
WHEN price > 0
AND quantity > 0
AND transaction_date <= '2024-12-31'
AND product_name IS NOT NULL
AND TRIM(product_name) != ''
THEN TRUE
ELSE FALSE
END AS is_valid
```
Checking IS NOT NULL before TRIM is important because TRIM(NULL) returns NULL, and NULL != '' is NULL (not TRUE), which would fall through to the ELSE branch correctly. However, being explicit improves readability.
IS NOT NULL
TRIM
TRIM(NULL)
NULL != ''
Solve Validate Data Quality yourself →