Função RIGHT

Corresponde ao conjunto certo de caracteres em uma string, conforme especificado pelo parâmetro. A string pode ser especificada como uma referência de coluna ou um literal de string.
  • Como a função RIGHT faz a correspondência com base em valores numéricos fixos, as alterações no comprimento ou na estrutura de um campo de dados podem impedir a execução correta de sua receita.
  • A função RIGHT requer um valor inteiro para o número de caracteres de correspondência. Se for necessário combinar strings usando padrões, use a transformação ENDSWITH. Consulte Função ENDSWITH.

Uso básico

Exemplo de referência de coluna:

derive type:single value:RIGHT(MyString,3)

Resultado: as três (últimas) letras mais à direita do valor da coluna MyName são gravadas na nova coluna.

Exemplo de literal de string:

derive type:single value:RIGHT('Hello, World',5)

Resultado: a string World é gravada na nova coluna.

Sintaxe

derive type:single value:RIGHT(column_string,end_count)

ArgumentoObrigatório?Tipo de dadosDescrição
column_stringSstringNome da coluna ou literal de string a ser aplicado à função
end_countSinteiro (positivo)Contagem de caracteres do final da string de origem para aplicar à correspondência

Para mais informações sobre os padrões de sintaxe, consulte as Observações de sintaxe da documentação da linguagem.

column_string

Nome de coluna ou constante de string a ser pesquisada.

  • Valores ausentes de coluna ou string geram resultados de string ausentes.
  • É necessário colocar as constantes de string entre aspas ('Hello, World').
  • Várias colunas e caracteres curinga não são aceitos.

Observações sobre o uso:

Obrigatório?Tipo de dadosValor de exemplo
SimLiteral de string ou referência de colunamyColumn

end_count

Contagem de caracteres do lado direito da string a incluir na correspondência.

  • O valor tem que ser um inteiro não negativo. Se o valor for 0, a correspondência não funcionará para todas as strings.
  • Se esse valor for maior que o comprimento da string, a correspondência será a string inteira.
  • As referências a colunas do tipo de dados inteiro não estão disponíveis.

Observações sobre o uso:

Obrigatório?Tipo de dadosValor de exemplo
SimInteiro (não negativo)5

Exemplos

Exemplo: interpretar segmentos de números de previdência social

Os números de previdência social obedecem a um formato regular:

XXX-XX-XXXX

Cada um dos grupos numéricos separados corresponde a um significado específico:

  • XXX: valor da área que corresponde a uma localização geográfica que envolve o endereço do titular do Número de previdência social (SSN, na sigla em inglês)
  • XX: número de grupo que identifica a ordem em que os números são atribuídos dentro de uma área
  • XXX: número de série do indivíduo dentro dos agrupamentos de área e grupo.
  • Para mais informações, acesse http://www.usrecordsearch.com/ssn.htm.

Origem:

O objetivo é analisar alguns números de previdência social em relação a informações sobre área, grupo e número de série. No entanto, os dados de seu número de previdência social não estão formatados corretamente:

OBSERVAÇÃO: o exemplo a seguir contém números de previdência social inválidos por razões de segurança. Se você usar esses dados no aplicativo, a validação falhará para o tipo de dados SSN.

ParticipantIdSocialNum
1001805-88-2013
1002845221914
1003865 22 9291
1004892-732213

Transformação:

Quando os dados acima são importados, a coluna SocialNum pode ou não ser inferida como tipo de dados SSN. De qualquer forma, é necessário limpar seus dados usando as seguintes transformações:

replace col: SocialNum on: '-' with: '' global: true

replace col: SocialNum on: ' ' with: '' global: true

Neste ponto, seus dados de SocialNum devem ser inferidos como do tipo SSN e formatados consistentemente como um conjunto de dígitos:

ParticipantIdSocialNum
1001805882013
1002845221914
1003865229291
1004892732213

A partir desses dados mais consistentes, agora é possível dividir por área, grupo e número de série da coluna:

derive type:single value: LEFT(SocialNum, 3) as: 'SSN_area'

derive type:single value: SUBSTRING(SocialNum, 3,5) as: 'SSN_group'

derive type:single value: RIGHT(SocialNum, 4) as: 'SSN_serial'

Você pode reordenar as três colunas novas e excluir a coluna de origem:

move col: SSN_serial after: SSN_area

move col: SSN_group after: SSN_area

drop col:SocialNum

Resultados:

Se você completar as etapas de transformação anteriores, seus dados deverão ser os seguintes:

ParticipantIdSSN_areaSSN_groupSSN_serial
1001805882013
1002845221914
1003865229291
1004892732213

Esta página foi útil? Conte sua opinião sobre:

Enviar comentários sobre…

Documentação do Google Cloud Dataprep
Precisa de ajuda? Acesse nossa página de suporte.