增加日期或部门过滤后没有结果,怎样排查元数据类型与过滤条件?
增加日期或部门过滤后没有结果,应先用确定存在的记录核对字段值和类型,再逐个组合条件。文字形式的日期、时区差异和空字段都可能让看似正确的条件排除资料。
先从这里排查
增加日期或部门过滤后没有结果,应先用确定存在的记录核对字段值和类型,再逐个组合条件。文字形式的日期、时区差异和空字段都可能让看似正确的条件排除资料。先定位哪一条条件改变了结果,不要直接删除所有过滤,尤其不能为了查到内容而绕过访问权限。
固定一条确定存在的目标记录
适用于不过滤时能够检索,选择某部门或时间段后变成空结果的情况。准备一条已获授权并确定符合要求的记录,保存索引内的真实字段。界面显示名称与内部部门ID可能不同,上传时间与生效时间也不是同一个含义,需要先确认业务上实际要筛选什么。
逐个核对字段类型和边界条件
检查字段是否支持过滤、数据类型是否与表达式一致,以及缺失值如何处理。核对日期边界采用包含还是排除,并把查询时间和索引时间换算到同一明确时区。组合条件时注意括号与逻辑运算,避免原本需要任选一个部门的条件被写成同时满足多个不同值。
在授权范围内逐项恢复过滤条件
先在保留权限约束的情况下,只加一条业务条件检查目标记录,再逐项加回其余条件。使用平台提供的表达式构造方式处理字符串转义,不把用户输入直接拼成任意过滤。若元数据录入错误,应修复来源与映射;不能靠长期取消条件让错误记录继续参与回答。
用边界日期及缺字段记录验收
至少测试边界日期前后、不同部门及元数据缺失的样本,逐条核对是否按既定规则纳入。记录过滤后的候选ID,再检查生成回答是否采用相同范围。成功标准是符合条件的记录保留、不符合的记录排除,结果条数增加或不再为空本身并不代表规则正确。
本文没有修改生产索引或用户访问范围。字段能力与过滤语法随检索服务不同,示例思路不能替代对应版本的接口说明。若某些资料缺少部门或日期,应明确默认行为;不能用一个宽泛的空值回退让受限资料绕过权限,也不能把缺少元数据简单解释成没有相关知识。
核对来源
以下资料用于核对概念和方法。文中的示例与测试范围分别注明,实际使用时请核对所用工具的版本。