Variables SQL del Generador de consultas
Aprende a usar variables SQL en el Generador de consultas para reutilizar tus consultas y evitar codificar datos de forma fija en tu código.
¿Por qué usar variables SQL?
Los beneficios de usar variables SQL incluyen:
- Ahorrar tiempo creando una variable de Campaign para seleccionar de una lista al crear tu informe, en lugar de pegar ID de Campaign.
- Intercambiar valores añadiendo variables que te permitan reutilizar el informe para casos de uso ligeramente diferentes en el futuro (como un evento personalizado diferente).
- Reducir 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 compañeros menos técnicos.
Uso de variables
Paso 1: Añadir una variable
Para añadir una variable a tu consulta, usa la siguiente sintaxis:
1
{{variable_type.${custom_label}}}
Reemplaza lo siguiente:
| Marcador de posición | Descripción |
|---|---|
variable_type |
El tipo de variable predefinido que deseas usar, como campaign o catalog_fields. Para la lista completa, consulta Tipos de variables compatibles. |
custom_label |
La etiqueta utilizada para identificar la variable en la pestaña Variables de tu Generador de consultas. |
En el siguiente ejemplo, se consulta el número total de usuarios entre el primer y el último día de un mes para una Campaign. A cada variable se le asignará un valor en el siguiente paso.
1
2
3
4
5
SELECT COUNT(*) AS total_users
FROM USERS_CAMPAIGNS_REVENUE_SHARED
WHERE campaign_id = '{{campaign.${Campaign}}}'
AND TIME > '{{start_date.${Month First Day}}}'
AND TIME < '{{end_date.${Month Last Day}}}';
Paso 2: Asignar un valor
De forma predeterminada, la pestaña Variables no se muestra en el Generador de consultas. Solo aparece después de añadir tu primera variable a la consulta. Allí podrás asignarle un valor. Los valores específicos que puedes elegir dependerán del tipo de esa variable en particular.
En el siguiente ejemplo, la Campaign “Summer Feature Launch” se asigna como valor, junto con el primer y último día de junio de 2025.

Tipos de variables generales
Número
number se puede usar en combinación con otras variables que no sean de cadena. Acepta cualquier número positivo o negativo, incluidos números decimales, como 5.5.
1
some_number_column < {{number.${custom_label}}}
Cadena
Para cambiar valores de cadena repetitivos entre ejecuciones de informes. Usa esta variable para evitar codificar de forma fija un valor varias veces en tu SQL.
1
'{{string.${add a string here.}}}'
Lista
Para seleccionar de una lista de opciones.
1
{{options.${metrics} | is_radio_button: 'true' | options: '[{"label": "test", "value": "test_value"}, {"label": "test2", "value": "test_value2"}]'}}
1
{{options.${metrics} | is_multi_select: 'true' | options: '[{"label": "test", "value": "test_value"}, {"label": "test2", "value": "test_value2"}]'}}
Botón de radio
Para mostrar opciones como botones de radio en lugar de un menú desplegable en la pestaña Variables. No se puede usar por sí solo—debe usarse en combinación con una lista.
1
is_radio_button: 'true'

Selección múltiple
Para determinar si el menú desplegable permite una selección única o múltiple. No se puede usar por sí solo—debe usarse en combinación con una lista.
1
is_multi_select: 'true'

Opciones
Para proporcionar la lista de opciones seleccionables en forma de etiqueta y valor. La etiqueta es lo que se muestra y el valor es con lo que se reemplaza la variable cuando se selecciona la opción. No se puede usar por sí solo—debe usarse en combinación con una lista.
1
options: '[{"label": "test", "value": "test_value"}, {"label": "test2", "value": "test_value2"}]'
Tipos de variables específicos de Braze
Rango de fechas
Para mostrar un calendario del cual seleccionar fechas. Reemplaza start_date y end_date con una marca de tiempo Unix en segundos para una fecha especificada en UTC, como 1696517353. Opcionalmente, puedes establecer solo un start_date o end_date para mostrar solo una fecha única en el calendario. Si las etiquetas de tu start_date y end_date no coinciden, se tratarán como dos fechas separadas, en lugar de un rango de fechas.
1
time > {{start_date.${custom_label}}} AND time < {{end_date.${custom_label}}}
Puedes establecer el rango de fechas en cualquiera de las siguientes opciones. Si se usan tanto start_date como end_date y comparten la misma etiqueta, se mostrarán todas las opciones. De lo contrario, si solo se usa uno, solo se mostrará la opción especificada.
| Opción | 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 |
| Rango de fechas | Especifica tanto una fecha de inicio como de fin | Requiere tanto start_date como end_date |
Tu Liquid se usará para mostrar un calendario dentro del rango de fechas dado:

Campaigns
Para seleccionar una Campaign. Compartir la misma etiqueta con un Canvas resultará en un botón de radio dentro de la pestaña Variables para seleccionar Canvas o Campaign.
1
campaign_id = '{{campaign.${custom_label}}}'
Para seleccionar múltiples Campaigns. Compartir la misma etiqueta con un Canvas resultará en un botón de radio dentro de la pestaña Variables para seleccionar Canvas o Campaign.
- Valor de reemplazo: ID BSON de Campaigns
1
campaign_id IN ({{campaigns.${custom_label}}})
Para seleccionar variantes de Campaign que pertenezcan a la Campaign seleccionada. Debe usarse junto con una variable de Campaign o Campaigns.
- Valor de reemplazo: ID de API de variantes de Campaign, cadenas delimitadas por comas como
api-id1, api-id2.
1
message_variation_api_id IN ({{campaign_variants.${custom_label}}})
Todas las variables de Campaign y Canvas deben usar los mismos identificadores para sincronizar estados dentro de un solo grupo.
Canvas
Para seleccionar un Canvas. Compartir la misma etiqueta con una Campaign resultará en un botón de radio dentro de la pestaña Variables para seleccionar Canvas o Campaign.
- Valor de reemplazo: ID BSON de Canvas
1
canvas_id = '{{canvas.${custom_label}}}'
Para seleccionar múltiples Canvas. Compartir la misma etiqueta con una Campaign resultará en un botón de radio dentro de la pestaña Variables para seleccionar Canvas o Campaign.
- Valor de reemplazo: ID BSON de Canvas
1
canvas_id IN ({{canvases.${custom_label}}})
Para seleccionar variantes de Canvas que pertenezcan a un Canvas elegido. Debe usarse con una variable de Canvas. Se establece en uno o más ID de API de variantes de Canvas, como una cadena separada por comas, como en api-id1, api-id2.
1
canvas_variation_api_id IN ({{canvas_variants.${custom_label}}})
Para seleccionar un paso en Canvas que pertenezca a un Canvas elegido. Debe usarse con una variable de Canvas.
1
canvas_step_api_id = '{{canvas_step.${custom_label}}}'
Para seleccionar pasos en Canvas que pertenezcan a Canvas elegidos. Debe usarse con una variable de Canvas.
1
canvas_step_api_id IN ({{canvas_steps.${custom_label}}})
Todas las variables de Campaign y Canvas deben usar los mismos identificadores para sincronizar estados dentro de un solo grupo.
Productos
products se usa para seleccionar uno o más productos del dashboard de Braze.
1
({{products.${custom_label}}})
1
2
3
SELECT product_name
FROM FULL_GAME_AND_DLC
WHERE product_id IN ({{products.${Games with DLC}}});
Eventos personalizados
Selecciona uno o más eventos personalizados o propiedades de eventos personalizados de una lista.
custom_events se usa para seleccionar uno o más eventos personalizados del dashboard de Braze.
1
'{{custom_events.${custom_label}}}'
1
2
3
SELECT event_name
FROM CUSTOM_EVENTS_TABLE
WHERE event_name IN ({{custom_events.${Purchased Game}}});
custom_event_properties se usa para seleccionar una o más propiedades del evento personalizado actualmente seleccionado. Requiere una variable custom_events establecida.
1
name = '{{custom_event_properties.${property names)}}}'
Espacio de trabajo
workspace se usa para seleccionar un único espacio de trabajo del dashboard de Braze.
1
workspace_id = '{{workspace.${app_group_id}}}'
Catálogos
Selecciona uno o más catálogos o campos de catálogo de una lista.
catalogs se usa para seleccionar uno o más catálogos del dashboard de Braze.
1
catalog_id = '{{catalogs.${catalog}}}'
catalog_fields se usa para establecer uno o más campos del catálogo actualmente seleccionado. Requiere una variable catalogs establecida.
1
field_name = '{{catalog_fields.${custom_label}}}'
Segments
Para seleccionar Segments que tengan activado el seguimiento de análisis. Se establece con el ID de análisis del Segment, que corresponde a los ID almacenados en la columna user_segment_membership_ids en las tablas donde esta columna está disponible.
1
{{segments.${analytics_segments}}}
Etiquetas
Para seleccionar etiquetas para Campaigns y Canvas. Se establece con Campaigns y Canvas con ID BSON separados por comas entre comillas simples que están asociados con las etiquetas seleccionadas.
1
{{tags.${some tags}}}
Metadatos de variables
Los metadatos se pueden adjuntar a una variable para cambiar su comportamiento añadiendo los metadatos con un carácter de barra vertical ( | ) después de la etiqueta de la variable. El orden de los metadatos no importa y puedes añadir cualquier cantidad de ellos. Además, todos los tipos de metadatos se pueden usar para cualquier variable, excepto los metadatos especiales que son específicos de ciertas variables (esto se indicará en esos casos). El uso de todos los metadatos es opcional y se utiliza para cambiar el comportamiento predeterminado de la variable.
1
{{string.${my var}| is_required: 'false' | description: 'My optional string var'}}
Booleano
Para saber si el valor de una variable está completado. Esto es útil para variables opcionales donde deseas cortocircuitar una condición si el valor de una variable no está completado. Se puede establecer en true o false dependiendo del valor de la otra variable.
1
{{string.${type_name_has_no_value} | visible: 'false'}} or {{string.${type_name_has_value} | visible: 'false'}}
type y name se refieren a la variable referenciada. Por ejemplo, para cortocircuitar la siguiente variable opcional: {{campaigns.${messaging}}:
1
{{string.${campaigns_messaging_has_no_value} | visible: 'false'}} OR campaign_id IN ({{campaigns.${messaging} | is_required: 'false'}})
Visible
Para determinar si las variables son visibles. Todas las variables son visibles de forma predeterminada en la pestaña Variables, donde puedes ingresar valores.
Hay varias variables especiales cuyo valor depende de otra variable, como si otra variable tiene un valor. Estas variables especiales se marcan como no visibles para que no aparezcan en la pestaña Variables.
1
visible: 'false'
Obligatoria
Para determinar si las variables son obligatorias de forma predeterminada. Un valor vacío para una variable generalmente conduce a una consulta incorrecta.
1
required: 'false'
Orden
Para seleccionar la posición de la variable en la pestaña Variables.
1
order: '1'
Incluir comillas
Para rodear los valores de una variable con comillas simples.
1
include_quotes: 'true'
Para rodear los valores de una variable con comillas dobles.
1
include_double_quotes: 'true'
Marcador de posición
Para especificar el texto del marcador de posición que se muestra en el campo de entrada de la variable.
1
placeholder: 'enter some value'
Descripción
Para especificar el texto de descripción que se muestra debajo del campo de entrada de la variable.
1
description: 'some description'
Valor predeterminado
Para especificar el valor predeterminado de la variable cuando no se especifica ningún valor.
1
default_value: '5'
Ocultar etiqueta
Para ocultar la etiqueta de la variable.
1
hide_label: 'true'