Indispensable: Consultas SQL para usar en SFMC [Incluye biblioteca]
Salesforce Marketing Cloud (SFMC) es una plataforma versátil y robusta que permite a los marketers manejar y optimizar la relación con el cliente, desde los diferentes canales de contacto. Entre sus herramientas incluye consultas SQL, las cuales permiten manipular los datos almacenados en las extensiones de datos o recuperar la información de las vistas de datos (Data Views) de Marketing Cloud. Veamos a continuación cuáles son sus casos de usos, algunos ejemplos y una biblioteca con consultas ¡listas para usar!
¿Qué son las Consultas SQL en SFMC?
Las consultas SQL (Structured Query Language) derivan del lenguaje estructurado para almacenar y procesar información en una base de datos relacional.
En el contexto de Salesforce Marketing Cloud (SFMC), las consultas SQL permiten a los usuarios manipular y extraer datos de las extensiones de datos (Data Extensions) y de las vistas de datos (Data Views), proporcionando una forma eficiente de segmentar, filtrar y analizar la información de los clientes en escenarios más avanzados.
Además de poder integrarlas dentro de las actividades de Automation Studio para la ejecución de procesos repetitivos y programados.
¿Cuáles son los casos de uso de Consultas SQL?
Las consultas SQL en SFMC tienen una amplia variedad de aplicaciones que pueden mejorar significativamente la eficiencia y efectividad de las campañas de marketing. En esta sección veremos los casos de uso más comunes en SFMC.
Segmentación de clientes
Crear segmentos de audiencia basados en criterios complejos o específicos combinando múltiples extensiones de datos, lo cual es esencial para la creación de campañas más relevantes y efectivas.
Por ejemplo, puedes esta consulta de SQL crea un segmento de clientes que han realizado una compra en los últimos 30 días pero no han abierto ningún correo electrónico en el mismo período:
SELECT c.CustomerID, c.EmailAddress
FROM Customers c
JOIN Purchases p ON c.CustomerID = p.CustomerID
LEFT JOIN _Open o ON c.CustomerID = o.SubscriberKey
WHERE p.PurchaseDate > DATEADD(day, -30, GETDATE())
AND (o.EventDate IS NULL OR o.EventDate <= DATEADD(day, -30, GETDATE()))
Limpieza de datos
Con el objetivo de identificar contactos duplicados, datos inconsistentes dentro de las extensiones de datos o contactos sin engagement. Escenarios que son cruciales para cuando planificas un borrado de contactos en SFMC.
Esta consulta identifica registros duplicados basados en la dirección de correo electrónico:
SELECT EmailAddress, COUNT(*) as RecordCount
FROM Customers
GROUP BY EmailAddress
HAVING COUNT(*) > 1
Análisis del desempeño de las campañas
Con esto puedes extraer y analizar datos de comportamiento de los clientes desde las Data Views para obtener insights valiosos, y mezclar el comportamiento con otras variables o datos almacenados del cliente. Esto te permite evaluar qué estrategias están funcionando y cuáles necesitan ajustes.
Por ejemplo, podemos analizar la distribución de segmentos entre los clientes que abren los correos electrónicos y aquellos que no lo hacen, considerando campañas y periodos específicos proporcionados. Para determinar si las campañas analizadas tienen incidencia o no sobre esa distribución.
SELECT
c.Segment,
SUM(CASE WHEN o.EventDate IS NOT NULL THEN 1 ELSE 0 END) AS Openers,
SUM(CASE WHEN o.EventDate IS NULL THEN 1 ELSE 0 END) AS NonOpeners,
COUNT(c.CustomerID) AS TotalCustomers
FROM
Customers c
LEFT JOIN
(SELECT DISTINCT SubscriberKey, JobID, EventDate
FROM _Open
WHERE JobID IN (12345, 67890, 24680, 13579)
AND EventDate >= DATEADD(month, -3, GETDATE())
AND IsUnique = 1) o
ON c.CustomerID = o.SubscriberKey
GROUP BY
c.Segment
Personalización
No es secreto que la personalización mejora la relevancia de los mensajes y que puede aumentar significativamente el engagement de los clientes. Por ello, similar a la generación de segmentos avanzados, podemos usar consultas SQL para recuperar datos específicos de los clientes y usarlos en la personalización de los mensajes enviados a través de los distintos canales, en conjunto con el uso de AMPscript.
O también, para enviar comunicaciones según eventos o datos especifico que tienen recurrencia. Por ejemplo, las campañas de cumpleaños o aniversarios:
SELECT FirstName, LastName, EmailAddress
FROM Customers
WHERE DATEPART(month, Birthday) = DATEPART(month, GETDATE())
AND DATEPART(day, Birthday) = DATEPART(day, GETDATE())
¿Cómo puedo probar mis consultas SQL?
Para probar tus consultas SQL en SFMC te doy dos alternativas disponibles:
1. Query Studio
Si tienes acceso a una instancia de SFMC, Query Studio es una excelente herramienta para ejecutar y depurar tus consultas SQL. Puedes encontrar más información y descargarla desde AppExchange.

2. MC Snippets
Si no tienes acceso a una instancia de SFMC, puedes utilizar la aplicación desarrollada por Pato Sapir para probar tus consultas SQL en un entorno de prueba. Puedes acceder a esta herramienta en MC Snippets.

Biblioteca de Consultas SQL
La comunidad de SFMC en Español ha estado trabajando activamente para fomentar la colaboración y el intercambio de conocimiento en Salesforce Marketing Cloud, con el objetivo de facilitar el aprendizaje, acelerar el desarrollo y ofrecer diferentes enfoques. Por estas razones, se creó una Biblioteca de Consultas SQL. En la cual tuve el honor de colaborar en su diseño utilizando Notion.
Te recomiendo explorar esta biblioteca ya que está siendo alimentada constantemente por expertos. En ella puedes encontrar consultas listas para usar en diversas aplicaciones, desde segmentación hasta análisis de datos y por supuesto, también puedes contribuir en su crecimiento
Recursos Adicionales
- Diagrama de Data Views creado por Pablo Facciano, el cual te permite explorar las relaciones y generar ejemplos de consultas SQL basados en la estructura de la vista de datos elegida. Ahorrando tiempo en copiar manualmente cada campo además de servir como un recurso de aprendizaje para aquellos que son nuevos en lenguaje SQL.
- Publicación en LinkedIn de Kevin Meneses para explorar más detenidamente la sintaxis de las Consultas SQL en SFMC y ejemplos de consultas con las Data Views.
- Si lo que buscas es contenido un poco más avanzado, te recomiendo esta publicación de Nobuyuki Watanabe que trata acerca de identificar automatizaciones que necesitan mejoras de performance.
Con estas herramientas y recursos, estarás muy bien acompañado para aprovechar al máximo las capacidades de SQL en Salesforce Marketing Cloud.
Comenta, ¿cómo aplicas las consultas SQL en SFMC? o ¿cuáles son tus casos de usos?👇🏼💬
Deja un comentario