Skip to main content
Join the Agentforce Virtual Hackathon to build innovative solutions and compete for a $50k Grand Prize. Sign up now. Terms apply.

Aprender los conceptos de SQL

Objetivos de aprendizaje

Después de completar esta unidad, podrá:

  • Aprender los términos y conceptos de SQL.
  • Comprender la estructura SQL de las perspectivas de Data Cloud.

Perspectivas en Data Cloud

Sus datos se introducen en Salesforce Data Cloud desde varias fuentes. Las perspectivas le proporcionan una manera de crear nuevas mediciones y organizar, agrupar y manipular datos en su cuenta. Existen dos tipos de perspectivas según el lenguaje de consulta estructurado (SQL): calculadas y de transmisión. Las perspectivas calculadas permiten realizar cálculos complejos según los datos almacenados; las perspectivas de transmisión se crean basándose en datos en tiempo real. Tal y como se puede apreciar en Create Insights in Data Cloud (Crear perspectivas en Data Cloud), hay varias maneras de crear nuevas perspectivas en Data Cloud. SQL es una de ellas. No necesita ser un experto en SQL para crear perspectivas, pero resulta útil conocer cómo se utiliza para crearlas. Este módulo aborda los conceptos básicos de SQL y proporciona ejemplos para ayudarle a crear perspectivas en su cuenta.

Términos para crear perspectivas

En primer lugar, vamos a ver algunos términos comunes relacionados con las perspectivas.

  • Transmisiones de datos: las transmisiones de datos son fuentes de datos incorporadas en Salesforce Data Cloud. Por ejemplo, una extensión de datos de un cliente de Marketing Cloud.
  • Objetos de modelo datos (DMO): las transmisiones de datos se asignan a un modelo de datos según los DMO. Los DMO más comunes son los pedidos de ventas, la identificación de partes, la participación en los correos electrónicos, etc.
  • Atributos: los atributos son campos de información que se encuentran en una transmisión de datos. Por ejemplo, un atributo puede ser el nombre de una persona o el Id. de cliente.
  • Medidas: las medidas contienen valores de atributos agregados, como la cantidad total gastada o la cantidad media de pedidos.
  • Dimensiones: las dimensiones contienen valores cualitativos que pueden utilizarse para categorizar una medida. Por ejemplo, si quiere ver la cantidad que se ha gastado cada cliente, el Id. de cliente podría ser una dimensión asociada con esa medida.
  • Clave externa: la clave externa es una columna en una base de datos relacional que proporciona un vínculo entre fuentes de datos (por ejemplo, el número de Id. de un cliente).
  • Clave completamente calificada: una clave completamente calificada (FQK) es una clave compuesta que contiene una clave de origen, como un Id. de contacto de CRM o un Id. de suscriptor de Marketing Cloud, y un calificador clave. Utilice las claves calificadas para evitar los principales conflictos a la hora de armonizar datos de diferentes fuentes en el modelo de datos de Data Cloud.
  • Clave principal: identificador exclusivo de un registro seleccionado por el usuario (por ejemplo, la dirección de correo electrónico de un cliente o el código de referencia de un producto).

Estructura de SQL

Ahora que está familiarizado con los términos, vamos a ver las palabras y estructura claves de SQL utilizadas para crear perspectivas de Data Cloud. El lenguaje SQL se escribe como una declaración o expresión formada por palabras clave.

Entre estas palabras clave se incluyen las siguientes:

SELECT: elija el nombre de la API de campo del atributo y los cálculos que desea realizar.

FROM: identifique el nombre de la API de objeto de la fuente de datos que desee buscar.

JOIN (opcional): utilice esta palabra clave para buscar datos a partir de otra fuente de datos basada en criterios específicos. WHERE (opcional): utilice esta palabra clave para incluir una instrucción condicional sobre los datos. GROUP BY: identifique cómo desea organizar o categorizar la medida que ha seleccionado.

Así es como se escribe la declaración SQL.

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_]>

Ejemplo

Este es un ejemplo en el que se solicita la cantidad total gastada por un 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 a desglosar cada una de las secciones.

Sección 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

Qué hace: define la información que está buscando (el gasto de un cliente) y la manera en la que quiere agregar la medida (suma). Cuando se calcula una medición (el gasto de un cliente), se almacena como medida customer_spend__c en el sistema.

Sección 2

FROM ssot__SalesOrder__dlm

Qué hace: identifica la fuente de datos (el DMO de un pedido de venta).

Sección 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, ‘’)

Qué hace: combina los datos de otro DMO (un DMO individual) con el DMO de pedido de venta. ON determina el punto de conexión o clave externa entre sus DMO. En este ejemplo, la clave externa entre dos DMO incluye dos campos, el Id. de parte y el campo de calificador clave del DMO SalesOrder, y el Id. y el campo de calificador clave correspondientes del DMO individual. Al incluir los atributos de calificador clave en la tabla se garantiza la precisión de los datos. Utilice la función IFNULL () en el caso de que no se hayan configurado los calificadores clave en los DLO subyacentes. Puede que haya una combinación de elementos vacíos, así que IFNULL() genera coherencia para mejorar la precisión de la unión (JOIN).

Sección 4

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

Qué hace: identifica los datos que quiere, o no, incluir. En este ejemplo, la consulta no debería incluir a clientes que hayan gastado dinero más de 365 a partir de la fecha actual.

Sección 5

GROUP BY
customer_id__c, kq_customer_id__c

Qué hace: determina la dimensión de la manera en la que desea agrupar sus datos (por Id. de cliente y por atributo de calificador clave para el Id. de cliente).

Objetos de modelo de datos

La primera parte de la expresión SQL se centra en la selección de atributos y medidas basados en un objeto de modelo datos (DMO). Por este motivo, conoce su modelo de datos es fundamental. Vamos a revisar los DMO más comunes y los atributos asociados que se pueden medir.

DMO

Cómo se utiliza

Ejemplo de atributo que se puede medir

Parte

Define las personas con las que tiene alguna relación, normalmente los clientes. Una parte incluye perfiles individuales unificados, que suelen utilizarse en perspectivas calculadas.

  • Cumpleaños en 7 días

Producto

Define cualquier cosa que tenga planificado vender o cualquier parte de un producto de la que se debe realizar un seguimiento con fines de servicio.

  • Zapatos de mujer de más de 50 $

Pedidos de ventas

Definen los ingresos, las oportunidades, las compras y los pedidos de ventas.

  • Valor del carrito de más de 500 $

Datos de implicación

Definen las interacciones o actividades de los clientes, normalmente relacionadas con la implicación del correo electrónico.

  • Al menos 5 clics en el correo electrónico

Datos del caso

Definen los problemas registrados o los tickets de asistencia.

  • Tickets abiertos >1 el año anterior

Funciones SQL

Ya ha aprendido sobre los términos, la estructura y los datos de SQL; ahora es el momento de agregar funciones más complejas para consultar y manejar los datos. Vamos a ver algunas funciones disponibles con más detalle.

Uniones de SQL

Para comprender las uniones de SQL, vamos a revisar qué datos deberían proporcionarse en su consulta según el tipo de unión. Utilizamos dos DMO de ejemplo para describir los siguientes cuatro tipos de uniones.

  • DMO 1: Pedidos de ventas
  • DMO 2: Clientes individuales

Unión interna, Unión izquierda, Unión derecha y Unión completa.

UNIÓN o UNIÓN INTERNA

UNIÓN IZQUIERDA

UNIÓN DERECHA

UNIÓN COMPLETA

Descripción

Devuelve registros que tengan valores coincidentes en ambos DMO.

Excluye los registros que no queremos del DMO 2.

Excluye los registros que no queremos del DMO 1.

Devuelve todos los registros coincidentes de ambos DMO.

Resultado

Pedidos de ventas específicos para clientes concretos.

Todos los pedidos de ventas y los pedidos de ventas para clientes específicos.

Todos los clientes y algunos pedidos de ventas para clientes específicos.

Todos los pedidos de ventas y todos los clientes, incluidos algunos registros coincidentes.

Nota

¿Siente curiosidad por saber cómo se vinculan los DMO con los perfiles unificados? Consulte esta página de ayuda para obtener más información sobre la vinculación y unión de datos.

CASE

Otra función común de SQL es la declaración CASE, que puede utilizarse para crear nuevas dimensiones. CASE puede utilizarse para devolver un valor cuando se cumple una condición.

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

Qué hace: Cuando un cliente ha gastado menos de 100 $, se identifica como un cliente que gasta poco. Cuando se cumple una condición, deja de leer y devuelve el resultado. Si no se cumple ninguna condición, devuelve el valor en la cláusula ELSE. Si no está la cláusula ELSE y no se cumple ninguna condición, se devuelve un valor NULL.

Funciones de formato

A veces se deben realizar algunas funciones de limpieza antes de crear la perspectiva calculada final. Puede hacerlo mediante funciones de formato. Este es un ejemplo que utiliza la función ROUND para redondear un valor de un decimal específico.

Esta es una sintaxis específica de esta función.

ROUND(expression, number of decimal places)

Este es un ejemplo que utiliza la expresión para redondear un pedido de venta.

SELECT ROUND(Salesorder_dlm.total_amount, 2)

Qué hace: En lugar de mostrar el total de gastos de un cliente, aparece como $143.5555 (143,5555 $). La función redondeará a dos decimales y el resultado será $143.56 (143,55 $).

Más funciones

Existen muchas más funciones que puede agregar a sus declaraciones SQL para ajustar más sus resultados. Resulta útil identificar su caso de uso y, después, trabajar con las posibles funciones que pueden llevarle a obtener los datos deseados.

Nota

Visite Using SQL Statements in Data Cloud (Utilizar declaraciones SQL en Data Cloud) para aprender todas las funciones disponibles.

Revisar ejemplos

Ahora que ya tiene información sobre los conceptos básicos de SQL y conoce la estructura, vamos a ver algunos ejemplos en la siguiente unidad para ayudarle a resolver su propio caso de uso.

Recursos

Volver al principio

Comparta sus comentarios sobre Trailhead en la Ayuda de Salesforce.

Nos encantaría conocer su experiencia con Trailhead. Ahora puede acceder al nuevo formulario de comentarios cuando quiera desde el sitio de la Ayuda de Salesforce.

Más información Continuar para compartir comentarios