Skip to main content

Conhecer os conceitos do SQL

Objetivos de aprendizagem

Após concluir esta unidade, você estará apto a:

  • Usar termos e conceitos de SQL.
  • Entender a estrutura SQL dos insights do Data Cloud.

Insights no Data Cloud

Seus dados são importados para o Salesforce Data Cloud de várias fontes. Os insights oferecem uma maneira de criar novas métricas e organizar, agrupar e manipular dados em sua conta. Há dois tipos de insights baseados em SQL (Structured Query Language): calculados e de streaming. Os insights calculados permitem cálculos complexos baseados em dados armazenados e os insights de streaming são criados com base nos dados em tempo real. Como indicado em Criar insights no Data Cloud, há várias maneiras de criar novos insights no Data Cloud. SQL é uma delas. Embora não seja necessário ser um especialista em SQL para criar insights, convém saber como o SQL é usado para criá-los. Este módulo aborda conceitos básicos de SQL e apresenta exemplos para ajudar você a criar insights na sua conta.

Termos para a criação de insights

Vamos começar abordando alguns termos comuns relacionados a insights.

  • Fluxos de dados: Os Fluxos de dados são origens de dados importadas para o Salesforce Data Cloud. Por exemplo, uma extensão de dados de um cliente do Marketing Cloud.
  • Objetos de modelo de dados (DMOs): Os Fluxos de dados são mapeados para um modelo de dados em conformidade com os DMOs. Os DMOs comuns incluem pedidos de vendas, parte, dados de engajamento, e assim por diante.
  • Atributos: Os atributos são campos de informações encontrados em um fluxo de dados. Por exemplo, um atributo pode ser o primeiro nome de uma pessoa ou a ID de um cliente.
  • Medidas: As medidas contêm valores agregados de atributos, como o valor total gasto ou o valor médio do pedido.
  • Dimensões: As dimensões contêm valores qualitativos que podem ser usados para categorizar uma medida. Por exemplo, se você quiser ver o valor total gasto de cada cliente, a ID do cliente pode ser uma dimensão associada à medida do valor total gasto.
  • Chave estrangeira: A chave estrangeira é uma coluna em um banco de dados relacional que oferece um vínculo entre origens de dados. Por exemplo, o número da ID de um cliente.
  • Chave totalmente qualificada: Uma chave totalmente qualificada (FQK) é uma chave composta que contém uma chave de origem, como a ID de um contato do CRM ou a ID do assinante do Marketing Cloud, e um qualificador de chave. Use chaves totalmente qualificadas para evitar conflitos de chave quando os dados de diferentes origens forem harmonizados no modelo de dados do Data Cloud.
  • Chave primária: Um identificador exclusivo selecionado pelo usuário de um registro. Por exemplo, o endereço de email de um cliente ou o SKU de um produto.

Estrutura de SQL

Agora que você está familiarizado com os termos, vamos observar as palavras-chave e a estrutura de SQL usadas para criar insights do Data Cloud. O SQL é escrito em forma de instrução ou expressão composta por palavras-chave.

Essas palavras-chave incluem:

SELECT: Escolha o nome da API de campo do atributo e o cálculo que você deseja executar.

FROM: Identifique o nome da API do objeto da origem de dados que você deseja pesquisar.

JOIN (opcional): Use essa palavra-chave para também pesquisar dados de outra origem de dados usando critérios especificados como base. WHERE (opcional): Use essa palavra-chave para incluir uma declaração condicional sobre os dados. GROUP BY: Identifique como pretende organizar ou categorizar a medida selecionada.

Veja como a instrução SQL é escrita.

SELECT <Attributes>, <Aggregation[_Measures_]>
FROM <Data Model Object>
JOIN [Inner | Left | Right | Full] <Data Model Object> [Optional]
WHERE <predicate on rows> [Optional]
GROUP BY <columns[_Dimensions_]>

Exemplo

Veja um exemplo que consulta o valor total gasto de um cliente.


SELECT
  SUM(ssot__SalesOrder__dlm.ssot__GrandTotalAmount__c) AS customer_spend__c,
  ssot__Individual__dlm.ssot__Id__c AS customer_id__c,
  ssot_Individual__dlm.KQ_Id__c AS kq_customer_id__c
FROM ssot__SalesOrder__dlm
JOIN ssot__Individual__dlm
ON (ssot__SalesOrder__dlm.ssot__SoldToCustomerId__c = ssot__Individual__dlm.ssot__Id__c)
AND IFNULL(ssot__SalesOrder__dlm.KQ_SoldToCustomerId__c, ‘’) = IFNULL(ssot__Individual__dlm.KQ_Id__c, ‘’)
WHERE
(ssot__SalesOrder__dlm.ssot__CreatedDate__c <= date_add(current_date(), 365.0))
GROUP BY
customer_id__c, kq_customer_id__c

Vamos analisar mais detalhadamente cada uma das seções.

Seção 1

SELECT
  SUM(ssot__SalesOrder__dlm.ssot__GrandTotalAmount__c) AS customer_spend__c,
  ssot__Individual__dlm.ssot__Id__c AS customer_id__c,
  ssot_Individual__dlm.KQ_Id__c AS kq_customer_id__c

O que faz: Define as informações que você está procurando (gasto do cliente) e como você deseja agregar essa medida (soma). Quando uma métrica (gasto do cliente) é calculada, ela é armazenada como uma medida customer_spend__c no sistema. E

Seção 2

FROM ssot__SalesOrder__dlm

O que faz: Identifica a fonte dos dados (um DMO de pedido de vendas).

Seção 3


JOIN
 ssot__Individual__dlm
ON
(ssot__SalesOrder__dlm.ssot__SoldToCustomerId__c = ssot__Individual__dlm.ssot__Id__c)
AND IFNULL(ssot__SalesOrder__dlm.KQ_SoldToCustomerId__c, ‘’) = IFNULL(ssot__Individual__dlm.KQ_Id__c, ‘’)

O que faz: Combina os dados de outro DMO (um DMO individual) com o DMO do pedido de vendas. ON determina o ponto de conexão ou chave estrangeira entre seus DMOs. Neste exemplo, a chave estrangeira entre os dois DMOs inclui dois campos: a ID da parte e o campo do qualificador de chave do DMO SalesOrder, e a ID e o campo do qualificador de chave correspondente do DMO Individual. A inclusão dos atributos do qualificador de chave na junção de tabelas garante a exatidão dos dados. Use a função ISNULL() caso os qualificadores de chave não tenham sido configurados em todos os DLOs subjacentes. Pode haver uma mistura de espaços em branco e IFNULL() criará consistência para melhorar a exatidão de JOIN.

Seção 4

WHERE
ssot__SalesOrder__dlm.ssot__CreatedDate__c <= date_add(current_date(), 365.0))

O que faz: Identifica quais dados você deseja ou não incluir. Neste exemplo, a consulta não deve incluir clientes que gastaram dinheiro em mais de 365 dias a partir da data atual.

Seção 5

GROUP BY
customer_id__c, kq_customer_id__c

O que faz: Determina a dimensão ou a forma como você pretende agrupar seus dados (por ID de cliente e por atributo do qualificador chave da ID de cliente).

Objetos de modelo de dados

A primeira parte da expressão SQL se concentra na seleção de atributos e medidas baseada em um objeto de modelo de dados (DMO). Portanto, é fundamental conhecer seu modelo de dados. Vamos rever alguns DMOs comuns e os atributos mensuráveis associados.

DMO

Como ele é usado

Exemplo de atributo mensurável

Parte

Define com quem você tem relacionamentos, geralmente clientes. A parte inclui perfis individuais unificados, que são frequentemente usados em insights calculados.

  • Data de nascimento em 7 dias

Produto

Define tudo que você planeja vender ou qualquer parte de um produto que será rastreada para fins de assistência técnica.

  • Sapatos femininos com valor superior a US$ 50

Pedido de vendas

Define receita, oportunidades, compras e pedidos de vendas.

  • Valor do carrinho superior a US$ 500

Dados de engajamento

Define as interações ou atividades dos clientes, normalmente relacionadas ao engajamento por email.

  • Pelo menos 5 cliques em emails

Dados do caso

Define problemas registrados ou tíquetes de suporte.

  • Tíquetes abertos >1 no ano passado

Funções do SQL

Você aprendeu sobre termos, estrutura e dados do SQL. Chegou a hora de adicionar funções mais complexas para consultar e manipular ainda mais os dados. Vamos rever algumas funções disponíveis com mais detalhes.

Junções SQL

Para entender as junções SQL, vamos analisar quais dados seriam apresentados na sua consulta baseados no tipo de junção. Usamos dois exemplos de DMOs para descrever os quatro tipos de junção a seguir.

  • DMO 1: Pedido de vendas
  • DMO 2: Clientes individuais

Junção interna, Junção à esquerda, Junção à direita e Junção completa.

JOIN ou INNER JOIN

LEFT JOIN

RIGHT JOIN

FULL JOIN

Descrição

Retornar registos que tenham valores correspondentes nos dois DMOs.

Excluir os registos que não queremos do DMO 2.

Excluir os registos que não queremos do DMO 1.

Devolver todos os registros correspondentes dos dois DMOs.

Resultado

Pedidos de vendas específicos para clientes específicos.

Todos os pedidos de vendas e pedidos de vendas para clientes específicos.

Todos os clientes e alguns pedidos de vendas para clientes específicos.

Todos os pedidos de vendas e todos os clientes, incluindo alguns registros correspondentes.

Nota

Quer saber como os DMOs são vinculados a perfis unificados? Consulte essa página de ajuda para obter mais informações sobre como vincular e fazer a junção de dados.

Caso

Outra função SQL comum é a instrução CASE, que pode ser usada para criar novas dimensões. A instrução CASE pode ser usada para retornar um valor quando uma condição é atendida.

SELECT CASE
WHEN
SUM(SALESORDER__dlm.grand_total_amount__c) < 100 THEN 'Low Spender'
End as Spend_Type__c

O que faz: Quando um cliente gasta menos de US$ 100, ele é identificado como um cliente que gasta pouco. Quando uma condição é verdadeira, a leitura é interrompida e o resultado é retornado. Se nenhuma condição for verdadeira, o valor da cláusula ELSE será retornada. Se não houver uma parte ELSE e nenhuma condição for verdadeira, NULL será retornado.

Funções de formatação

Às vezes, é necessário realizar algumas funções de limpeza antes de criar o insight calculado final. Você pode fazer isso com funções de formatação. Veja um exemplo de uso da função ROUND para arredondar um valor para uma casa decimal especificada.

Veja a sintaxe específica dessa função.

ROUND(expression, number of decimal places)

Veja um exemplo de uso dessa expressão para arredondar um pedido de vendas.

SELECT ROUND(Salesorder_dlm.total_amount, 2)

O que faz: Em vez de ter o total de gastos de um cliente exibido como US$ 143,5555. Essa função arredondaria o total para 2 casas decimais e o resultado seria US$ 143,55.

Mais funções

Há muitas outras funções que podem ser adicionadas às instruções SQL para refinar ainda mais os resultados. Convém identificar seu caso de uso e, em seguida, analisar as possíveis funções que poderão levar você aos dados desejados.

Nota

Visite Como usar instruções SQL no Data Cloud para ver todas as funções disponíveis.

Analisar exemplos

Agora que você já entende os conceitos básicos de SQL e conhece a estrutura, vamos dar uma olhada em alguns exemplos na próxima unidade para ajudar você a resolver seus próprios casos de uso.

Recursos

Voltar ao topo

Compartilhe seu feedback do Trailhead usando a Ajuda do Salesforce.

Queremos saber sobre sua experiência com o Trailhead. Agora você pode acessar o novo formulário de feedback, a qualquer momento, no site Ajuda do Salesforce.

Saiba mais Continue compartilhando feedback