Todos os produtos
Search
Central de documentação

DataWorks:Usar expressões de função para atribuir valores a campos da tabela de destino

Última atualização: Jun 27, 2026

O DataWorks Data Integration permite usar expressões de função para atribuir valores aos campos da tabela de destino em tarefas de sincronização em tempo real de banco de dados completo.

Limites

Você pode usar expressões de função para definir atribuições de campo para tabelas de destino apenas em tarefas de sincronização em tempo real de banco de dados completo que utilizam MySQL ou PolarDB como source e MaxCompute ou Hologres como destino.

Funções e sintaxe suportadas

Funções suportadas

Nome da função

Descrição

Parâmetros

Exemplo de expressão

CONCAT

Concatena strings.

  • Parâmetro 1...n: Pode ser outro valor de campo (#{col}), uma variável integrada ou um literal de string ("string"). Opcional. Sem limite de parâmetros.

concat(#{name},${table_name_src},"_01")

DATE_FORMAT

Converte um timestamp em uma string de hora em um formato específico.

  • Parâmetro 1: Campo numérico da tabela ancestral contendo um timestamp UNIX de 10 dígitos ou um timestamp em milissegundos de 13 dígitos.

  • Parâmetro 2: Tipo de timestamp. Use "unix" para timestamp UNIX de 10 dígitos ou "millis" para timestamp em milissegundos de 13 dígitos.

  • Parâmetro 3: Fuso horário usado na conversão.

  • Parâmetro 4: Formato da string de data de destino, como yyyy-MM-dd HH:mm:ss:SSS ZZ. yyyy representa o ano; MM, o mês; dd, o dia; HH, a hora (formato de 24 horas); mm, o minuto; ss, o segundo; SSS, o milissegundo; e ZZ, o fuso horário.

date_format(#{timestamp},"millis","Asia/Shanghai","yyyy-MM-dd HH:mm:ss.SSS ZZ")

TO_TIMESTAMP

Converte uma string de hora em um timestamp de 10 ou 13 dígitos.

  • Parâmetro 1: Campo de texto da tabela ancestral contendo uma string de hora em um formato específico.

  • Parâmetro 2: Formato da string de hora, como yyyy-MM-dd HH:mm:ss:SSS ZZ. yyyy representa o ano; MM, o mês; dd, o dia; HH, a hora (formato de 24 horas); mm, o minuto; ss, o segundo; SSS, o milissegundo; e ZZ, o fuso horário.

  • Parâmetro 3: Fuso horário usado na conversão.

  • Parâmetro 4: Tipo de timestamp de saída. Use "unix" para timestamp UNIX de 10 dígitos ou "millis" para timestamp em milissegundos de 13 dígitos.

to_timestamp(#{create_time},"yyyy-MM-dd HH:mm:ss","Asia/Shanghai","millis")

DATE_CONVERT

Converte uma string de hora de um formato e fuso horário para outro formato e fuso horário.

  • Parâmetro 1: Campo de texto da tabela ancestral contendo uma string de hora em um formato específico.

  • Parâmetro 2: Formato da string de hora de source, como yyyy-MM-dd HH:mm:ss:SSS ZZ. yyyy representa o ano; MM, o mês; dd, o dia; HH, a hora (formato de 24 horas); mm, o minuto; ss, o segundo; SSS, o milissegundo; e ZZ, o fuso horário.

  • Parâmetro 3: Fuso horário de source.

  • Parâmetro 4: Formato da string de data de destino, como yyyy-MM-dd HH:mm:ss:SSS ZZ. yyyy representa o ano; MM, o mês; dd, o dia; HH, a hora (formato de 24 horas); mm, o minuto; ss, o segundo; SSS, o milissegundo; e ZZ, o fuso horário.

  • Parâmetro 5: Fuso horário de destino.

date_convert(#{create_time},"yyyy-MM-dd HH:mm:ss","Asia/Shanghai","yyyyMMdd","UTC")

SUBSTRING

Extrai uma substring de uma string.

  • Parâmetro 1: Campo de texto da tabela ancestral.

  • Parâmetro 2: Posição inicial da substring. A substring inclui o caractere nessa posição. A posição inicial mínima é 0.

  • Parâmetro 3: (Opcional) Comprimento da substring. Se o comprimento for menor ou igual a 0, retorna a substring da posição inicial até o final.

substring(#{name},0,2)

LOWER

Converte uma string para minúsculas.

  • Parâmetro 1: Campo de texto da tabela ancestral ou variável integrada.

lower(#{name})

UPPER

Converte uma string para maiúsculas.

  • Parâmetro 1: Campo de texto da tabela ancestral ou variável integrada.

upper(#{name})

Sintaxe suportada

  • Somente expressões de chamada de função são suportadas. A expressão deve conter nome da função, parênteses e parâmetros. Outros tipos de expressão não são aceitos. Exemplo: DATE_FORMAT(#{create_time},"millis","Asia/Shanghai","yyyyMMdd").

  • Literais de string nos parâmetros da expressão de função devem estar entre aspas duplas (""). Exemplo: CONCAT("hello","world").

  • Literais numéricos nos parâmetros da expressão de função podem ser inseridos diretamente como números. Exemplo: SUBSTRING(#{col1},0,10).

  • Chamadas de função podem ser aninhadas nos parâmetros. Exemplo: CONCAT(SUBSTRING(#{col1},0,10),"test").

  • Use #{} para referenciar valores de colunas de saída de nós ancestrais.

  • Use ${} para referenciar variáveis integradas. Os tipos de variáveis integradas suportados correspondem aos disponíveis nas configurações de coluna adicional de cada canal. Exemplo: CONCAT(SUBSTRING(#{col1},0,10),${DATASOURCE_NAME_SRC}).

  • Nomes de funções e de variáveis integradas não diferenciam maiúsculas de minúsculas.

Pré-requisitos

Procedimento

Etapa 1: Acessar a página de edição da tarefa em tempo real de banco de dados completo

  1. Faça login no console do DataWorks. Na região de destino, clique em Data Integration > Data Integration no painel de navegação à esquerda. Selecione um workspace na lista suspensa e clique em Go to Data Integration.

  2. No painel de navegação à esquerda, clique em image para acessar a página de tarefas de sincronização.

  3. Localize a tarefa de sincronização em tempo real de banco de dados completo desejada. Na coluna Actions, escolha More > Edit para abrir a página de configuração da tarefa de sincronização.

Etapa 2: Adicionar uma coluna processada por função à tabela de destino

Adicione a coluna processada por função ao esquema da tabela de destino antes de gravar dados nela.

  1. Na página de configuração da tarefa em tempo real de banco de dados completo, clique em Next. Na seção Target Table Mapping, clique em Refresh Mapping.

  2. Localize a tabela de destino à qual deseja adicionar uma coluna processada por função e clique no ícone image na coluna Destination Table Name para acessar a página de configuração do esquema da tabela.

  3. Na seção Field, clique em Add Fields. Após configurar o campo, clique em Apply and Refresh Mapping.

    Você também pode selecionar Target Table Structure - Batch Modify and Add Fields em Batch Operations para adicionar colunas processadas por função a várias tabelas de destino.

Etapa 3: Definir a expressão de função

  1. Na coluna Value assignment, clique em Configure para abrir a página de atribuição de campo.

  2. Na seção Destination Table Field, localize a coluna processada por função adicionada. Defina o Assignment Method como Function. Em seguida, insira a expressão de função na coluna Assign. Para mais informações, consulte Funções e sintaxe suportadas.

    O parâmetro Assignment Method oferece três opções: Manual Assignment, Select Variable e Function. Você só pode atribuir valores a campos inexistentes na tabela de source. Caso contrário, o sistema usa o valor do campo homônimo da tabela de source.