Filtros de regra de mapeamento
Nesta página
Um filtro de regra de mapeamento consiste em uma expressão JavaScript que avalia cada linha de dados de entrada. Os valores de coluna da linha estão disponíveis no objeto columns["<column_name>"]
.
Durante um tarefa de sincronização, o Relational Migrator avalia a expressão para cada linha:
Se o valor de retorno for
true
, a linha será incluída nos dados migrados.Se o valor de retorno for
false
, a linha será excluída.Se o valor de retorno também não for, a linha será excluída e um erro será registrado durante a migração.
Exemplo
Abaixo está um exemplo de documentos de entrada e expressões JavaScript de regra de mapeamento que filtram os dados.
Filtrar com base no valor do campo
O exemplo a seguir filtra um documento com base em um único valor de campo .
Entrada relacional:
customer_id | empresa_name | endereço | Cidade | postal_code | País | Telefone |
---|---|---|---|---|---|---|
ALFKI | Alfreds Futterkiste | Obere Str. 57 | Frankfurt | 12209 | Alemanha | 030-0074321 |
ANATR | Ana Trujillo Emparedados y helados | Avda. de la Constitución 2222 | México D.F. | 05021 | México | 5-555-4729 |
anton | Antonio Moreno Taquería | Mataderos 2312 | México D.F. | 05023 | México | 5-555-3932 |
Expressão de filtro:
columns["country"] == "Mexico"
Saída do MongoDB :
[ { "customerId": "ANATR", "address": "Avda. de la Constitución 2222", "city": "México D.F.", "companyName": "Ana Trujillo Emparedados y helados", "country": "Mexico", "phone": "5-555-4729", "postalCode": "05021", }, { "customerId": "ANTON", "address": "Mataderos 2312", "city": "México D.F.", "companyName": "Antonio Moreno Taquería", "country": "Mexico", "phone": "5-555-3932", "postalCode": "05023", } ]