Todos los productos
Search
Centro de documentos

OpenSearch:Condiciones de filtro para orígenes de datos de RDS y PolarDB

Última actualización: Sep 04, 2026

Una condición de filtro restringe las filas que se extraen de su tabla de base de datos de RDS o PolarDB hacia OpenSearch, tanto para la sincronización completa como para la incremental. Escriba la condición como una expresión separada por comas con los nombres de campo de la tabla de base de datos (no los del esquema de aplicación de OpenSearch).

Tipos de campo compatibles

Categoría

Tipos

Entero

TINYINT, SMALLINT, INTEGER, BIGINT

Punto flotante

FLOAT, REAL, DOUBLE, NUMERIC, DECIMAL

Temporal

TIME, TIMESTAMP

Operadores

Comparación numérica y temporal

Use <, >, <=, >= con tipos numéricos (de TINYINT a DECIMAL) y temporales (TIME, TIMESTAMP):

price > 100
createtime > '2021-02-05 00:00:00'

Igualdad y desigualdad

Use =, !=, <> tanto con tipos numéricos como de caracteres:

status = 1
field_string = 'active'
field_string != 'deleted'
field_string <> 'deleted'

Para valores de caracteres, son válidas las comillas simples ('), las comillas dobles (") o la ausencia de comillas.

Comprobación de NULL

Use =, != o <> para comprobar valores NULL, en lugar de IS NULL o IS NOT NULL. Esto aplica tanto a campos numéricos como de caracteres:

field = null
field = NULL
field != null
field != NULL
field <> null
field <> NULL

Ejemplos de tipo carácter

field = ''
field != ''
field <> ''
field = 'null'
field = 'NULL'
field != 'null'
field != 'NULL'
field <> 'null'
field <> 'NULL'

Combinar varias condiciones

Use una coma (,) para representar la lógica AND. El operador OR no es compatible.

status=1,literal_id='abcd',createtime>'2021-02-05 00:00:00'

La cláusula SQL WHERE equivalente es:

WHERE status = 1 AND literal_id = 'abcd' AND createtime > '2021-02-05 00:00:00'

No use AND ni la palabra clave WHERE directamente en la condición de filtro:

WHERE status=1 AND type=2   -- Incorrect
status=1 AND type=2         -- Incorrect
status=1,type=2             -- Correct

Notas de uso

Alcance

La función de filtrado de orígenes de datos está disponible para orígenes de datos de RDS y PolarDB.

Efecto en las eliminaciones

Cuando una condición de filtro está activa, OpenSearch elimina cualquier documento que deje de cumplir dicha condición, incluso durante la sincronización incremental.

Por ejemplo, si el filtro es status=1 y el estado de un documento cambia de 1 a 2 en RDS, ese documento se elimina de OpenSearch.

Si su origen de datos tiene una tabla principal y una secundaria, aplique condiciones de filtro a ambas tablas para evitar un consumo innecesario de almacenamiento en la tabla secundaria.

Nomenclatura de campos

Use los nombres de campo de la tabla de base de datos, no los del esquema de aplicación de OpenSearch.

Campos DATE y DATETIME

Para los campos DATE o DATETIME, el valor de tiempo debe tener el formato obligatorio. Ejemplo:

createtime>'2018-03-01 00:00:00'

Operaciones no compatibles

No compatible

Ejemplo incorrecto

Alternativa correcta

IS NULL / IS NOT NULL

field IS NULL

field = null

LIKE / NOT LIKE

LIKE '%aaa'

—

Funciones y expresiones

in(type,1,2,3), length(title) > 10

—

Ecuaciones de identidad

1 = 1

—

Lógica OR

status=1 OR type=2

Use coma para AND: status=1,type=2