Generador de consultas
El Generador de consultas genera informes utilizando datos de Braze en Snowflake. El Generador de consultas incluye plantillas de consultas SQL predefinidas para que puedas empezar, o puedes escribir tus propias consultas SQL personalizadas para obtener aún más información.
Requisitos previos
Para usar el Generador de consultas, necesitas estos permisos en el espacio de trabajo:
| Permiso | Qué permite |
|---|---|
| “View Dashboard Reports” | Abrir el Generador de consultas en el panel |
| “View PII” | Acceder a los datos del Generador de consultas, que pueden incluir datos de clientes |
| “Edit Dashboard Reports” | Crear, editar y ejecutar informes del Generador de consultas |
Tablas de datos disponibles
El Generador de consultas usa las mismas tablas SQL de Snowflake que las extensiones de segmento SQL y Snowflake Data Sharing. Para ver la lista completa de tablas disponibles y sus columnas, consulta la referencia de tablas SQL.
Vistas de atributos del perfil de usuario
El Generador de consultas y las extensiones de segmento SQL incluyen la mayoría de las vistas de atributos del perfil de usuario, como las instantáneas periódicas y el historial de atributos predeterminados.
Dos vistas de atributos personalizados solo están disponibles a través de Snowflake Data Sharing:
USER_CUSTOM_ATTRIBUTES_HISTORY_VIEW_SHAREDUSER_LATEST_STATE_CUSTOM_ATTRIBUTE_VIEW_SHARED
Braze excluye estas vistas del Generador de consultas y de las extensiones de segmento SQL porque son lentas de consultar a escala de espacio de trabajo y suelen agotar el tiempo de espera. Usa USER_CUSTOM_ATTRIBUTES_VIEW_SHARED para obtener instantáneas de atributos personalizados en el Generador de consultas. Si necesitas datos históricos o casi en tiempo real de atributos personalizados, consulta las vistas excluidas a través de Snowflake Data Sharing.
Ejecutar informes en el Generador de consultas
Para ejecutar un informe del Generador de consultas:
- Ve a Analytics > Query Builder.
- Selecciona Create SQL Query. Si necesitas inspiración o ayuda para escribir tu consulta, selecciona Query Template y elige una plantilla de la lista. Si no, selecciona SQL Editor para ir directamente al editor.
- Tu informe recibe automáticamente un nombre con la fecha y hora actuales. Pasa el cursor por encima del nombre y selecciona para darle a tu consulta SQL un nombre descriptivo.
- Escribe tu consulta SQL en el editor o selecciona Ask Operator para generar SQL con Operator. Si escribes tu propio SQL, consulta Escribir consultas SQL personalizadas para ver los requisitos y recursos.
- Selecciona Run Query.
- Guarda tu consulta.
- Para descargar un CSV de tu informe, selecciona Export.

Cada vez que ejecutas un informe, el Generador de consultas consulta los datos disponibles en ese momento en Snowflake. Los resultados pueden cambiar entre ejecuciones, incluso dentro del mismo día, a medida que llegan nuevos datos. Los eventos recientes pueden tardar en aparecer debido a retrasos en la ingesta y el procesamiento.
Plantillas de consultas
Accede a las plantillas de consultas seleccionando Create SQL Query > Query Template cuando crees un informe por primera vez.
Consulta Plantillas de consultas para ver la lista de plantillas disponibles.
Plazo de los datos
Las consultas devuelven datos de los últimos 60 días. Si usas Currents o Snowflake Data Sharing, es posible que puedas consultar hasta dos años de datos, que es el tiempo durante el que se conservan tus datos en Snowflake. Para obtener más información sobre la retención ampliada de datos, ponte en contacto con tu administrador del éxito del cliente.
Zona horaria del Generador de consultas
La zona horaria predeterminada para consultar nuestra base de datos de Snowflake es UTC. Por ello, puede haber algunas discrepancias de datos entre tu página Email Channel Engagement (que sigue la zona horaria de tu empresa) y los resultados del Generador de consultas.
Para convertir la zona horaria en los resultados de tu consulta, añade el siguiente SQL a tu consulta y personalízalo según la zona horaria de tu empresa:
SELECT
DATE_TRUNC(
'day',
CONVERT_TIMEZONE('UTC','Australia/Sydney', TO_TIMESTAMP(TIME))
) AS send_date_sydney,
COUNT(ID) AS emails_sent
USERS_MESSAGES_EMAIL_SEND_SHARED
WHERE
-- Apply the date range in Sydney time as well
CONVERT_TIMEZONE('UTC','Australia/Sydney', TO_TIMESTAMP(TIME)) >= '2025-03-25 00:00:00'
AND CONVERT_TIMEZONE('UTC','Australia/Sydney', TO_TIMESTAMP(TIME)) < '2025-03-29 00:00:00'
AND APP_GROUP_ID = 'your app group ID'
GROUP BY
send_date_sydney
ORDER BY
send_date_sydney;
Historial de consultas
La sección Query history del Generador de consultas muestra las consultas que ejecutaste anteriormente para ayudarte a hacer un seguimiento de tu trabajo y reutilizarlo. El historial de consultas se conserva durante siete días, lo que significa que las consultas con más de siete días de antigüedad se eliminan automáticamente.
Si necesitas auditar el uso de consultas durante periodos más largos o mantener registros más allá de siete días, te recomendamos exportar o guardar los resultados de consultas importantes antes de que caduquen.
Comparar el Generador de consultas con otras fuentes de informes
Los resultados del Generador de consultas pueden diferir de los de otras herramientas de informes porque utilizan orígenes de datos y métodos de procesamiento diferentes.
Por ejemplo, el recuento de rebotes blandos en el Generador de consultas puede ser mayor que en los informes de capacidad de entrega de SendGrid. El Generador de consultas cuenta todas las ocurrencias de rebotes blandos sin deduplicación. Si un usuario tiene varios rebotes blandos antes de la entrega final (o tras reintentos prolongados), se cuenta cada intento de rebote blando. La capacidad de entrega de SendGrid utiliza sus propios datos y lógica, a los que Braze no tiene acceso, por lo que los recuentos entre ambos informes pueden no coincidir.
Para obtener más información sobre cómo se hace el seguimiento de los rebotes blandos en las distintas fuentes de informes, consulta Rebote blando en el glosario de análisis de correo electrónico.
Generar SQL con Operator

Esta característica ahora forma parte de BrazeAI Operator™, el asistente de IA unificado de Braze. Las capacidades de IA que antes estaban disponibles como asistentes independientes ahora son accesibles a través de Operator desde cualquier lugar en el que ya estés trabajando en el panel.
En el panel lateral del Generador de consultas, selecciona Ask Operator y describe los datos que quieres. Operator escribe SQL a partir de las tablas de datos de Braze disponibles, y puedes revisar el SQL y ver una vista previa de los resultados antes de ejecutar tu informe. Para usar Operator en el Generador de consultas, necesitas el permiso “Edit Dashboard Reports”.
El SQL generado debe seguir las mismas reglas de escritura de SQL que las consultas que escribes tú. Para más información, consulta Qué puedes hacer con Operator. Para saber cómo gestiona Operator tus datos, consulta Privacidad y seguridad de datos de Operator.
Escritura de consultas SQL personalizadas
Escribe tu consulta SQL utilizando la sintaxis de Snowflake. Consulta la referencia de tablas para obtener una lista completa de las tablas y columnas disponibles para consultar.
Para ver los detalles de las tablas dentro del Generador de consultas:
- Desde la página del Query Builder, abre el panel Reference y selecciona Available Data Tables para ver las tablas de datos disponibles y sus nombres.
- Selecciona See Details para ver la descripción de la tabla e información sobre las columnas de la tabla, como los tipos de datos.
- Para insertar el nombre de la tabla en tu SQL, selecciona Copy table name to SQL editor.
Para utilizar consultas preescritas proporcionadas por Braze, selecciona Query Template al crear un informe por primera vez en el Generador de consultas.
Restringir tu consulta a un periodo de tiempo específico te ayudará a generar resultados más rápido. El siguiente es un ejemplo de consulta que obtiene el número de compras y los ingresos generados en la última hora.
SELECT COUNT(*) as Purchases, SUM(price) as Revenue
FROM USERS_BEHAVIORS_PURCHASE_SHARED
WHERE to_date(to_timestamp_ntz(time)) >= DATEADD('hour', -1, date_trunc('day',CURRENT_DATE()));
Esta consulta recupera el número de envíos de correo electrónico en el último mes:
SELECT COUNT(*) as Sends
FROM USERS_MESSAGES_EMAIL_SEND_SHARED
WHERE to_date(to_timestamp_ntz(time)) >= DATEADD('month', -1, date_trunc('day',CURRENT_DATE()));
Si consultas CANVAS_ID, CANVAS_VARIATION_API_ID o CAMPAIGN_ID, sus columnas de nombre asociadas se incluirán automáticamente en la tabla de resultados. No necesitas incluirlas en la propia consulta SELECT.
| Nombre del ID | Columna de nombre asociada |
|---|---|
CANVAS_ID |
Canvas Name |
CANVAS_VARIATION_API_ID |
Canvas Variant Name |
CAMPAIGN_ID |
Campaign Name |
Esta consulta recupera los tres ID y sus columnas de nombre asociadas con un máximo de 100 filas:
SELECT CANVAS_ID, CANVAS_VARIATION_API_ID, CAMPAIGN_ID
FROM USERS_MESSAGES_EMAIL_SEND_SHARED
LIMIT 100
Rellenar automáticamente el nombre de la variante de campaña
Si deseas que el nombre de la variante de campaña se rellene automáticamente, incluye el nombre de columna MESSAGE_VARIATION_API_ID en tu consulta, como en este ejemplo:
SELECT CANVAS_ID, CANVAS_VARIATION_API_ID, CAMPAIGN_ID, MESSAGE_VARIATION_API_ID
FROM USERS_MESSAGES_EMAIL_SEND_SHARED
LIMIT 100
Solución de problemas
Tu consulta puede fallar por cualquiera de las siguientes razones:
- Errores de sintaxis en tu consulta SQL
- Tiempo de espera de procesamiento agotado (después de 6 minutos)
- Los informes que tardan más de 6 minutos en ejecutarse agotarán el tiempo de espera.
- Si un informe agota el tiempo de espera, intenta limitar el rango de tiempo en el que consultas los datos o consulta un conjunto de datos más específico.
Uso de variables
Usa variables para emplear tipos de variables predefinidos en SQL y hacer referencia a valores sin tener que copiarlos manualmente. Por ejemplo, en lugar de copiar manualmente el ID de una Campaign en el editor SQL, puedes usar {{campaign.${My campaign}}} para seleccionar directamente una Campaign desde un desplegable en la pestaña Variables.
Después de crear una variable, aparecerá en la pestaña Variables de tu informe del Generador de consultas. Los beneficios de usar variables SQL incluyen:
- Ahorra tiempo creando una variable de Campaign para seleccionar de una lista al crear tu informe, en lugar de pegar ID de Campaign.
- Intercambia valores agregando variables que te permitan reutilizar el informe para ejemplos ligeramente diferentes en el futuro (como un evento personalizado diferente).
- Reduce los errores de usuario al editar tu SQL disminuyendo la cantidad de edición necesaria para cada informe. Los compañeros de equipo que se sientan más cómodos con SQL pueden crear informes que luego pueden usar los compañeros menos técnicos.
Directrices
Las variables deben seguir esta sintaxis de Liquid: {{ type.${name}}}, donde type debe ser uno de los tipos aceptados y name puede ser lo que elijas. Las etiquetas de estas variables son, de forma predeterminada, el nombre de la variable.
De forma predeterminada, todas las variables son obligatorias (y tu informe no se ejecutará a menos que selecciones valores para ellas), excepto el intervalo de fechas, que por defecto corresponde a los últimos 30 días cuando no se proporciona un valor.
Tipos de variables
Se aceptan los siguientes tipos de variables:
- Número
- Intervalo de fechas
- Mensajería
- Productos
- Eventos personalizados
- Propiedades de eventos personalizados
- Espacio de trabajo
- Catálogos
- Campos de catálogo
- Opciones
- Segments
- Cadena
- Etiquetas
Número
- Valor de reemplazo: El valor proporcionado, como
5.5 - Ejemplo de uso:
some_number_column < {{number.${some name}}}
Intervalo de fechas
Si usas tanto start_date como end_date, deben tener el mismo nombre para que puedas usarlas como intervalo de fechas.
Valores de ejemplo
El tipo de intervalo de fechas puede ser relativo, fecha de inicio, fecha de fin o intervalo de fechas.
Los cuatro tipos se muestran si se usan tanto start_date como end_date con el mismo nombre. Si solo se usa una de ellas, solo se mostrarán los tipos pertinentes.
| Tipo de intervalo de fechas | Descripción | Valores obligatorios |
|---|---|---|
| Relativo | Especifica los últimos X días | Requiere start_date |
| Fecha de inicio | Especifica una fecha de inicio | Requiere start_date |
| Fecha de fin | Especifica una fecha de fin | Requiere end_date |
| Intervalo de fechas | Especifica una fecha de inicio y una de fin | Requiere start_date y end_date |
- Valor de reemplazo: Reemplaza
start_dateyend_datepor una marca de tiempo Unix en segundos para una fecha especificada en UTC, como1696517353. - Ejemplo de uso: Para todas las variables de tipo relativo, fecha de inicio, fecha de fin e intervalo de fechas:
time > {{start_date.${some name}}} AND time < {{end_date.${some name}}}- Puedes usar solo
start_dateo soloend_datesi no quieres un intervalo de fechas.
- Puedes usar solo
Mensajería
Todas las variables de mensajería deben compartir el mismo identificador cuando quieras vincular su estado en un mismo grupo.
Canvas
Para seleccionar un Canvas. Si comparte el mismo nombre con una Campaign, aparecerá un botón de opción en la pestaña Variables para seleccionar Canvas o Campaign.
- Valor de reemplazo: ID BSON del Canvas
- Ejemplo de uso:
canvas_id = ‘{{canvas.${some name}}}’
Canvases
Para seleccionar varios Canvas. Si comparte el mismo nombre con una Campaign, aparecerá un botón de opción en la pestaña Variables para seleccionar Canvas o Campaign.
- Valor de reemplazo: ID BSON de los Canvas
- Ejemplo de uso:
canvas_id IN ({{canvases.${some name}}})
Campaign
Para seleccionar una Campaign. Si comparte el mismo nombre con un Canvas, aparecerá un botón de opción en la pestaña Variables para seleccionar Canvas o Campaign.
- Valor de reemplazo: ID BSON de la Campaign
- Ejemplo de uso:
campaign_id = ‘{{campaign.${some name}}}’
Campaigns
Para seleccionar varias Campaigns. Si comparte el mismo nombre con un Canvas, aparecerá un botón de opción en la pestaña Variables para seleccionar Canvas o Campaign.
- Valor de reemplazo: ID BSON de las Campaigns
- Ejemplo de uso:
campaign_id IN ({{campaigns.${some name}}})
Variantes de campaña
Para seleccionar variantes de campaña que pertenecen a la Campaign seleccionada. Debe usarse junto con una variable de Campaign o Campaigns.
- Valor de reemplazo: ID de API de las variantes de campaña, cadenas delimitadas por comas, como
api-id1, api-id2. - Ejemplo de uso:
message_variation_api_id IN ({{campaign_variants.${some name}}})
Variantes en Canvas
Para seleccionar variantes en Canvas que pertenecen a un Canvas elegido. Debe usarse con una variable de Canvas o Canvases.
- Valor de reemplazo: ID de API de las variantes en Canvas, cadenas delimitadas por comas, como
api-id1, api-id2. - Ejemplo de uso:
canvas_variation_api_id IN ({{canvas_variants.${some name}}})
Paso en Canvas
Para seleccionar un paso en Canvas que pertenece a un Canvas elegido. Debe usarse con una variable de Canvas.
- Valor de reemplazo: ID de API del paso en Canvas
- Ejemplo de uso:
canvas_step_api_id = ‘{{canvas_step.${some name}}}’
Pasos en Canvas
Para seleccionar pasos en Canvas que pertenecen a los Canvas elegidos. Debe usarse con una variable de Canvas o Canvases.
- Valor de reemplazo: ID de API de los pasos en Canvas
- Ejemplo de uso:
canvas_step_api_id IN ({{canvas_steps.${some name}}})