You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

基于规则表执行比较运算,实现数据集数据质量校验

数据质量校验实现方案

需求回顾

现有两张表:

  • 主数据表:包含ID、Name1、Name2、Zip1、Zip2字段
  • 规则表:定义两条相等校验规则
    • R001:校验Name1与Name2是否相等
    • R002:校验Zip1与Zip2是否相等

需要输出所有违反规则的记录,每条规则违规单独占一行(同一记录违反多条规则时生成多行),输出字段包含Rule、ID、FieldLeft、FieldRight。

实现代码(SQL)

可以通过UNION ALL分别处理两条规则的校验逻辑,筛选出不符合条件的记录:

-- 处理R001规则:Name1≠Name2的违规记录
SELECT 
    'R001' AS Rule,
    ID,
    'Name1' AS FieldLeft,
    'Name2' AS FieldRight
FROM 主数据表
WHERE Name1 != Name2

UNION ALL

-- 处理R002规则:Zip1≠Zip2的违规记录
SELECT 
    'R002' AS Rule,
    ID,
    'Zip1' AS FieldLeft,
    'Zip2' AS FieldRight
FROM 主数据表
WHERE Zip1 != Zip2;

示例演示

主数据表示例数据

IDName1Name2Zip1Zip2
001张三张三100000100000
002李四李五200000200000
003王六王七300000300001

输出结果

RuleIDFieldLeftFieldRight
R001002Name1Name2
R001003Name1Name2
R002003Zip1Zip2

逻辑说明

  1. 针对每条规则单独编写查询,筛选出字段不相等的记录
  2. 用UNION ALL合并两个查询结果,确保每条违规记录单独成行
  3. 固定填充Rule、FieldLeft、FieldRight字段的值,与规则表定义保持一致

内容的提问来源于stack exchange,提问作者hbit

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.15 21:15:44