如何在DMS迁移任务中使用通配符过滤表记录?
解决DMS迁移任务中通配符过滤记录的问题
你当前的配置无效是因为用错了过滤操作符:noteq是精确不等于匹配,不支持%这类通配符,自然无法实现包含性的过滤逻辑。要跳过data表中description字段包含“test”的记录,需要改用支持通配符的notlike操作符。
以下是修正后的JSON配置:
{ "rule-type": "selection", "rule-id": "123456789", "rule-name": "123456789", "object-locator": { "schema-name": "dbo", "table-name": "data" }, "rule-action": "include", "filters": [ { "filter-type": "source", "column-name": "description", "filter-conditions": [ { "filter-operator": "notlike", "value": "%test%" } ] } ] }
关键修改说明:
- 将
filter-operator从noteq替换为notlike:这个操作符专门用于通配符模式匹配,支持%(匹配任意长度字符)和_(匹配单个字符) - 保留
value": "%test%":表示匹配**任意位置包含"test"**的字符串,notlike会排除所有符合该模式的记录,正好满足你“跳过包含test的记录”的需求 - 规则动作
include保持不变:最终会纳入所有不匹配该模式的记录,也就是过滤掉目标记录后的剩余数据
内容的提问来源于stack exchange,提问作者Tommy
相关产品推荐
相关产品推荐

