热门角色不仅是灵感来源,更是你的效率助手。通过精挑细选的角色提示词,你可以快速生成高质量内容、提升创作灵感,并找到最契合你需求的解决方案。让创作更轻松,让价值更直接!
我们根据不同用户需求,持续更新角色库,让你总能找到合适的灵感入口。
为指定表格列提供数据验证规则,确保数据准确性。
以下为表 ods_users 的列 age 的数据验证规则与实施示例。定位为 ODS 层的“低侵入验证”:尽量不改变源数据,仅识别并标注/隔离异常。
规则定义
实施示例
SQL 约束与校验示例(PostgreSQL)
Spark(PySpark)校验示例
Great Expectations 规则示例(Spark/Pandas)
dbt 测试示例(使用 dbt-utils)
备注
Below are pragmatic, production-grade data validation rules for column dwd_customer.email, focused on warehouse-friendly enforcement and pipeline checks. The rules aim to prevent malformed, duplicate, or low-quality values while remaining implementable in SQL and data quality frameworks.
Scope and assumptions
Validation rules
Example implementations
A) Warehouse-side SQL checks (generic pattern; adapt functions to engine)
Invalid rows detection:
SELECT customer_id, email
FROM dwd_customer
WHERE
email IS NULL OR TRIM(email) = ''
OR LENGTH(email) > 254
OR email NOT LIKE '%@%' OR email LIKE '%@%@%'
OR REGEXP_LIKE(email, '[\s\p{Cntrl}]')
OR NOT REGEXP_LIKE(TRIM(email),
'^(?:[A-Za-z0-9!#$%&''+/=?^_{|}~-]+(?:\\.[A-Za-z0-9!#$%&''*+/=?^_{|}~-]+))@(?:A-Za-z0-9?)(?:\.(?:A-Za-z0-9?))+$')
OR REGEXP_LIKE(email, '[,;]')
OR LENGTH(SPLIT_PART(email, '@', 1)) > 64
OR LOWER(SPLIT_PART(email, '@', 2)) IN (SELECT domain_name FROM ref_disposable_domains);
Canonicalization (ETL step): SELECT customer_id, email, LOWER(TRIM(email)) AS email_canonical FROM staging_customer;
B) dbt tests (schema.yml)
models:
C) Great Expectations (expectation suite pseudocode)
D) Delta Lake / Spark SQL table constraint (if supported)
ALTER TABLE dwd_customer
ADD CONSTRAINT chk_email_format CHECK (
LENGTH(email) <= 254
AND email RLIKE '^(?:[A-Za-z0-9!#$%&''+/=?^_{|}~-]+(?:\\.[A-Za-z0-9!#$%&''*+/=?^_{|}~-]+))@(?:A-Za-z0-9?)(?:\.(?:A-Za-z0-9?))+$'
AND LENGTH(split(email, '@')[0]) <= 64
AND NOT (email RLIKE '[\s\p{Cntrl}]')
AND NOT (email RLIKE '[,;]')
);
Operational notes
以下为 ads_marketing_report 表中列 kpi_value 的数据验证规则设计与实现示例。规则采用分层设计(硬性约束、条件约束、质量告警),并提供可配置方案与通用 SQL 检查示例,便于在不同数据仓库或管道中实施。
一、适用范围与假设
二、硬性约束(必须满足)
三、条件约束(基于 KPI 类型/单位的规则) 建议维护一个配置表 dim_kpi_validation_config,定义每个 KPI 的单位、范围及精度要求,按此进行验证。
四、质量告警(软性规则)
五、配置表示例(建议) 创建配置表以驱动验证规则,避免硬编码:
另建货币最小单位表 dim_currency_precision(code STRING, minor_unit INT),例如:
六、通用 SQL 验证示例(跨仓库可用的检查查询) 以下检查以 ads_marketing_report(r) 与 dim_kpi_validation_config(c) 联合验证为例,尽量使用常见函数:
未配置 KPI(错误) SELECT r.* FROM ads_marketing_report r LEFT JOIN dim_kpi_validation_config c ON LOWER(r.kpi_name) = LOWER(c.kpi_name) WHERE c.kpi_name IS NULL;
非空(错误) SELECT COUNT(*) AS null_cnt FROM ads_marketing_report WHERE kpi_value IS NULL;
负值不合法(错误) SELECT r.* FROM ads_marketing_report r JOIN dim_kpi_validation_config c ON LOWER(r.kpi_name) = LOWER(c.kpi_name) WHERE c.allow_negative = FALSE AND r.kpi_value < 0;
范围校验(错误) SELECT r.* FROM ads_marketing_report r JOIN dim_kpi_validation_config c ON LOWER(r.kpi_name) = LOWER(c.kpi_name) WHERE (r.kpi_value < c.min_val OR r.kpi_value > c.max_val);
小数位限制(错误) -- 使用四舍五入对比,确保不超过规定小数位 SELECT r.* FROM ads_marketing_report r JOIN dim_kpi_validation_config c ON LOWER(r.kpi_name) = LOWER(c.kpi_name) WHERE ABS(r.kpi_value - ROUND(r.kpi_value, c.scale_limit)) > 0;
整数要求(错误) SELECT r.* FROM ads_marketing_report r JOIN dim_kpi_validation_config c ON LOWER(r.kpi_name) = LOWER(c.kpi_name) WHERE c.integer_required = TRUE AND r.kpi_value <> ROUND(r.kpi_value, 0);
单位一致性(错误) -- ratio 要求 [0,1];pct 要求 [0,100];money 需结合货币最小单位 SELECT r.* FROM ads_marketing_report r JOIN dim_kpi_validation_config c ON LOWER(r.kpi_name) = LOWER(c.kpi_name) LEFT JOIN dim_currency_precision p ON r.currency_code = p.code WHERE (c.unit = 'ratio' AND (r.kpi_value < 0 OR r.kpi_value > 1)) OR (c.unit = 'pct' AND (r.kpi_value < 0 OR r.kpi_value > 100)) OR (c.unit = 'money' AND p.code IS NULL AND c.currency_required = TRUE) OR (c.unit = 'money' AND p.code IS NOT NULL AND ABS(r.kpi_value - ROUND(r.kpi_value, p.minor_unit)) > 0);
计算一致性(告警,需相关字段) -- CTR 近似等于 clicks/impressions SELECT r.* FROM ads_marketing_report r WHERE LOWER(r.kpi_name) = 'ctr' AND r.impressions > 0 AND ABS(r.kpi_value - (r.clicks * 1.0 / r.impressions)) > 0.01; -- 容差可配置
-- CPC 近似等于 spend/clicks SELECT r.* FROM ads_marketing_report r WHERE LOWER(r.kpi_name) = 'cpc' AND r.clicks > 0 AND ABS(r.kpi_value - (r.spend * 1.0 / r.clicks)) > 0.01;
七、实施建议
通过上述规则与检查,可有效保障 ads_marketing_report.kpi_value 的类型正确性、范围合理性、单位一致性以及与相关指标的计算一致性,从而提高报表数据的可信度与可用性。
用一条高效提示词,自动生成可执行的数据验证规则,让每一列数据都有清晰边界与可追溯标准,帮助团队把“数据干净度”变成可复制的竞争力。
在导入、转换、落库环节快速生成列级校验规则,配套示例数据与说明,缩短上线周期并减少回滚。
搭建统一的字段校验模板,批量覆盖核心表,提升数据质量标准化,支持审计与走查。
为指标口径关键字段制定格式与范围限制,提前拦截脏数据,减少报表返工,加快周报月报交付。
将模板生成的提示词复制粘贴到您常用的 Chat 应用(如 ChatGPT、Claude 等),即可直接对话使用,无需额外开发。适合个人快速体验和轻量使用场景。
把提示词模板转化为 API,您的程序可任意修改模板参数,通过接口直接调用,轻松实现自动化与批量处理。适合开发者集成与业务系统嵌入。
在 MCP client 中配置对应的 server 地址,让您的 AI 应用自动调用提示词模板。适合高级用户和团队协作,让提示词在不同 AI 工具间无缝衔接。
免费获取高级提示词-优惠即将到期