首批通过分布式安全可靠测评,为关键业务系统打造
SQL 条件过滤数据
更新时间:2026-06-13 17:22:13
本文为您介绍新建数据迁移任务时,选择迁移对象后通过 SQL 条件过滤数据的适用场景、使用限制和操作步骤。
适用场景
新建数据迁移任务时,您可以设置 SQL 过滤条件来过滤数据。完成设置后,只有满足过滤条件的数据才会被迁移至目标数据库。该功能适用于数据的定期迁移、拆分数据表、过滤历史数据和脏数据等多种应用场景。
使用限制
通过 SQL 条件过滤数据时,仅支持过滤当前表的字段,不支持跨表过滤。
SQL 条件过滤数据的作用范围为全量迁移和增量同步。
SQL 条件过滤数据使用的列请勿执行 DDL 变更,否则可能导致数据迁移异常。
操作步骤
新建数据迁移任务,并配置至 选择类型和对象 步骤。
详情请参见 数据迁移 模块相应类型的新建数据迁移任务文档。

选择迁移对象后,鼠标悬停至右侧列表中的目标表对象,单击显示的 设置过滤条件 图标。

在 设置 对话框中,输入标准的 SQL 语句中的
WHERE子句,来配置行过滤。
SQL WHERE 语句的语法说明如下:
列名不会进行大小写转换,请输入正确的列名,并对列名添加转义符(`)。例如,`col`。
过滤条件支持标准的 SQL WHERE 语句(仅支持 =、!=、< 和 > 操作符),只有满足 WHERE 条件的数据才会被迁移至目标数据库。例如,`id` > 200。
过滤条件支持根据时间条件进行过滤,但请注意 SQL WHERE 语句中对时间的格式要求(yyyy-MM-dd HH:mm:ss 或 yyyy-MM-dd)。例如,您需要过滤 2022 年 12 月 31 日之后的增量数据,请输入 `date_now` > '2022-12-31' 或 `date_now` > '2022-12-31 00:00:00'。
如果您需要过滤某个时间段内的数据,请使用 and 或 or 语句。例如,您需要过滤 2021 年 12 月 31 日至 2022 年 4 月 1 日之间的数据,请输入 `init_date`>'2021-12-31' and `init_date`<'2022-04-01'。
过滤条件中需要使用英文单引号(')。例如 `address` in ('BEIJING','HANGZHOU')。
配置完成后,单击 验证语法。
语法验证通过后,您可以在 过滤条件下推 区域,设置关闭或开启过滤条件下推。

在 查看列 区域,确认列名和类型无误后,单击 确定。
根据提示完成后续的任务配置。