쿼리 빌더 SQL 변수
쿼리 빌더에서 SQL 변수를 사용하는 방법을 알아두면 쿼리를 재사용하고 코드에 데이터를 하드코딩하는 일을 피할 수 있습니다.
SQL 변수를 사용하는 이유는 무엇인가요?
SQL 변수를 사용하면 다음과 같은 이점이 있습니다:
- 캠페인 ID를 붙여넣는 대신 보고서를 작성할 때 목록에서 선택할 수 있는 캠페인 변수를 만들어 시간을 저장하세요.
- 변수를 추가하여 값을 교체하면 나중에 약간 다른 사용 사례(예: 다른 커스텀 이벤트)에 대해 보고서를 재사용할 수 있습니다.
- 각 보고서에 필요한 편집 양을 줄여 SQL을 편집할 때 사용자 오류를 줄입니다. SQL에 더 익숙한 팀원들은 기술적이지 않은 팀원들이 사용할 수 있는 보고서를 만들 수 있습니다.
변수 사용
1단계: 변수 추가
쿼리에 변수를 추가하려면 다음 구문을 사용합니다:
1
{{variable_type.${custom_label}}}
다음을 교체합니다:
입력 안내 | 설명 |
---|---|
variable_type |
사용하려는 미리 정의된 변수 유형(예: campaign 또는 catalog_fields ). 전체 목록은 지원되는 변수 유형을 참조하세요. |
custom_label |
쿼리 빌더의 변수 탭에서 변수를 식별하는 데 사용되는 레이블입니다. |
다음 예에서는 캠페인에 대해 월 1일부터 말일까지의 총 사용자 수를 쿼리합니다. 각 변수에는 다음 단계에서 값이 할당됩니다.
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}}}';
2단계: 값 지정
기본적으로 변수 탭은 쿼리 작성기에 표시되지 않습니다. 쿼리에 첫 번째 변수를 추가한 후에만 표시됩니다. 여기에서 값을 할당할 수 있습니다. 선택할 수 있는 특정 값은 특정 변수의 유형에 따라 달라집니다.
다음 예에서는 2025년 6월의 첫날과 마지막 날과 함께 ‘여름 기능 출시’ 캠페인이 값으로 할당되어 있습니다.
일반 변수 유형
숫자
number
는 문자열이 아닌 다른 변수와 함께 사용할 수 있습니다. 5.5
과 같은 10진수를 포함한 모든 양수 또는 음수를 허용합니다.
1
some_number_column < {{number.${custom_label}}}
문자열
보고서 실행 간 반복적인 문자열 값을 변경하기 위해. 이 변수를 사용하여 SQL에서 값을 여러 번 하드코딩하는 것을 피하십시오.
1
'{{string.${add a string here.}}}'
목록
옵션 목록에서 선택하기 위해.
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"}]'}}
라디오 버튼
변수 탭에서 드롭다운을 선택하는 대신 라디오 버튼으로 옵션을 표시합니다. 이 기능은 단독으로 사용할 수 없으며 목록과 함께 사용해야 합니다.
1
is_radio_button: 'true'
다중 선택
선택 드롭다운이 단일 선택 또는 다중 선택을 허용하는지 여부에 따라 다릅니다. 이 기능은 단독으로 사용할 수 없으며 목록과 함께 사용해야 합니다.
1
is_multi_select: 'true'
옵션
레이블과 값의 형태로 선택 가능한 옵션 목록을 제공하기 위해. 레이블은 표시되는 것이고 값은 옵션이 선택될 때 변수로 대체되는 것입니다. 이 기능은 단독으로 사용할 수 없으며 목록과 함께 사용해야 합니다.
1
options: '[{"label": "test", "value": "test_value"}, {"label": "test2", "value": "test_value2"}]'
브레이즈 전용 변수 유형
날짜 범위
날짜를 선택할 수 있는 캘린더를 표시합니다. start_date
및 end_date
을 UTC로 지정된 날짜의 초 단위 유닉스 타임스탬프(예: 1696517353
)로 바꿉니다. 선택적으로 start_date
또는 end_date
만 설정하여 캘린더에 단일 날짜만 표시할 수 있습니다. start_date
과 end_date
의 레이블이 일치하지 않으면 날짜 범위가 아닌 두 개의 개별 날짜로 취급됩니다.
1
time > {{start_date.${custom_label}}} AND time < {{end_date.${custom_label}}}
날짜 범위를 다음 옵션 중 하나로 설정할 수 있습니다. start_date
및 end_date
을 모두 사용하고 동일한 레이블을 공유하는 경우 모든 옵션이 표시됩니다. 그렇지 않고 하나만 사용하면 지정된 옵션만 표시됩니다.
옵션 | 설명 | 필수 값 |
---|---|---|
상대 | 지정된 지난 X일 | start_date 필요 |
시작일 | 시작 날짜를 지정합니다 | start_date 필요 |
종료일 | 종료 날짜를 지정합니다 | end_date 필요 |
날짜 범위 | 시작 날짜와 종료 날짜를 모두 지정합니다 | start_date 및 end_date 모두 필요합니다 |
Liquid는 지정된 날짜 범위 내에서 달력을 표시하는 데 사용됩니다:
캠페인
하나의 캠페인을 선택하기 위해. 캔버스와 동일한 레이블을 공유하면 변수 탭에 캔버스 또는 캠페인을 선택할 수 있는 라디오 버튼이 표시됩니다.
1
campaign_id = '{{campaign.${custom_label}}}'
캠페인을 다중 선택하기 위해. 캔버스와 동일한 레이블을 공유하면 변수 탭에 캔버스 또는 캠페인을 선택할 수 있는 라디오 버튼이 표시됩니다.
- 대체 값: 캠페인 BSON ID
1
campaign_id IN ({{campaigns.${custom_label}}})
선택한 캠페인에 속하는 캠페인 변형을 선택하기 위해. 캠페인 또는 캠페인 변수와 함께 사용해야 합니다.
- 대체 값: 캠페인 변형 API ID, 쉼표로 구분된 문자열 예:
api-id1, api-id2
.
1
message_variation_api_id IN ({{campaign_variants.${custom_label}}})
단일 그룹 내에서 상태를 동기화하려면 모든 캠페인 및 캔버스 변수가 동일한 식별자를 사용해야 합니다.
캔버스
하나의 캔버스를 선택하기 위해서. 캠페인과 동일한 레이블을 공유하면 변수 탭에 캔버스 또는 캠페인을 선택할 수 있는 라디오 버튼이 표시됩니다.
- 대체 값: 캔버스 BSON ID
1
canvas_id = '{{canvas.${custom_label}}}'
여러 캔버스를 선택하려면. 캠페인과 동일한 레이블을 공유하면 변수 탭에 캔버스 또는 캠페인을 선택할 수 있는 라디오 버튼이 표시됩니다.
- 대체 값: 캔버스 BSON ID
1
canvas_id IN ({{canvases.${custom_label}}})
선택한 캔버스에 속하는 캔버스 변형을 선택하기 위해. 캔버스 또는 캔버스 변수를 사용해야 합니다. api-id1, api-id2
와 같이 쉼표로 구분된 문자열로 하나 이상의 캔버스 변형 API ID로 설정합니다.
1
canvas_variation_api_id IN ({{canvas_variants.${custom_label}}})
선택한 캔버스에 속하는 캔버스 단계를 선택하기 위해서. 캔버스 변수와 함께 사용해야 합니다.
1
canvas_step_api_id = '{{canvas_step.${custom_label}}}'
선택한 캔버스에 속하는 캔버스 단계를 선택하기 위해. 캔버스 또는 캔버스 변수를 사용해야 합니다.
1
canvas_step_api_id IN ({{canvas_steps.${custom_label}}})
단일 그룹 내에서 상태를 동기화하려면 모든 캠페인 및 캔버스 변수가 동일한 식별자를 사용해야 합니다.
제품
products
는 Braze 대시보드에서 하나 이상의 제품을 선택하는 데 사용됩니다.
1
({{products.${custom_label}}})
1
2
3
SELECT product_name
FROM FULL_GAME_AND_DLC
WHERE product_id IN ({{products.${Games with DLC}}});
사용자 지정 이벤트
목록에서 하나 이상의 사용자 지정 이벤트 또는 사용자 지정 이벤트 속성을 선택합니다.
custom_events
는 Braze 대시보드에서 하나 이상의 사용자 지정 이벤트를 선택하는 데 사용됩니다.
1
'{{custom_events.${custom_label}}}'
1
2
3
SELECT event_name
FROM CUSTOM_EVENTS_TABLE
WHERE event_name = '{{custom_events.${Purchased Game}}}';
custom_event_properties
는 현재 선택된 사용자 지정 이벤트에서 하나 이상의 속성을 선택하는 데 사용됩니다. custom_events
변수를 설정해야 합니다.
1
name = '{{custom_event_properties.${property names)}}}'
워크스페이스
workspace
는 Braze 대시보드에서 단일 워크스페이스를 선택하는 데 사용됩니다.
1
workspace_id = '{{workspace.${app_group_id}}}'
카탈로그
목록에서 하나 이상의 카탈로그 또는 카탈로그 필드를 선택합니다.
catalogs
는 Braze 대시보드에서 하나 이상의 카탈로그를 선택하는 데 사용됩니다.
1
catalog_id = '{{catalogs.${catalog}}}'
catalog_fields
는 현재 선택된 카탈로그에서 하나 이상의 필드를 설정하는 데 사용됩니다. catalogs
변수를 설정해야 합니다.
1
field_name = '{{catalog_fields.${custom_label}}}'
세그먼트
세그먼트를 선택하려면 분석 추적이(가) 켜져 있어야 합니다. 이 열을 사용할 수 있는 테이블의 user_segment_membership_ids
열에 저장된 ID에 해당하는 세그먼트 분석 ID로 설정합니다.
1
{{segments.${analytics_segments}}}
태그
캠페인 및 캔버스를 위한 태그 선택. 선택한 태그와 연결된 작은따옴표로 쉼표로 구분된 BSON ID가 있는 캠페인 및 캔버스로 설정합니다.
1
{{tags.${some tags}}}
변수 메타데이터
변수 레이블 뒤에 파이프( | ) 문자를 추가하여 메타데이터를 변수에 첨부하여 변수의 동작을 변경할 수 있습니다. 메타데이터의 순서는 중요하지 않으며 원하는 수만큼 추가할 수 있습니다. 또한 모든 유형의 메타데이터는 특정 변수에만 해당하는 특수 메타데이터를 제외하고는 모든 변수에 사용할 수 있습니다(이 경우에는 해당 사항이 표시됩니다). 모든 메타데이터의 사용은 선택 사항이며 기본값의 가변 동작을 변경하는 데 사용됩니다. |
1
{{string.${my var}| is_required: 'false' | description: 'My optional string var'}}
부울
변수 값이 채워졌는지 여부를 알 수 있습니다. 이는 변수 값이 채워지지 않은 경우 조건을 단락시키려는 선택적 변수에 유용합니다. 다른 변수의 값에 따라 true
또는 false
로 설정할 수 있습니다.
1
{{string.${type_name_has_no_value} | visible: 'false'}} or {{string.${type_name_has_value} | visible: 'false'}}
type
및 name
는 참조된 변수를 나타냅니다. 예를 들어, 다음 옵션 변수를 단락시키려면 {{campaigns.${messaging}}
:
1
{{string.${campaigns_messaging_has_no_value} | visible: 'false'}} OR campaign_id IN ({{campaigns.${messaging} | is_required: 'false'}})
표시 여부
변수가 보이는지 여부에 따라. 모든 변수는 변수 탭에서 기본값으로 표시되며, 값을 입력할 수 있습니다.
다른 변수가 값을 가지고 있는지 여부와 같은 다른 변수에 따라 값이 달라지는 여러 특수 변수가 있습니다. 이 특수 변수는 표시되지 않도록 표시되어 변수 탭에 표시되지 않습니다.
1
visible: 'false'
필수
변수가 기본값으로 필요한지 여부에 대해. 변수의 값이 비어 있으면 일반적으로 잘못된 쿼리가 발생합니다.
1
required: 'false'
주문
변수 탭에서 변수의 위치를 선택합니다.
1
order: '1'
따옴표 포함
변수의 값을 작은따옴표로 둘러싸기 위해서입니다.
1
include_quotes: 'true'
변수의 값을 큰따옴표로 둘러싸기 위해서입니다.
1
include_double_quotes: 'true'
입력 안내
변수의 입력 필드에 표시되는 플레이스홀더 텍스트를 지정합니다.
1
placeholder: 'enter some value'
설명
변수의 입력 필드 아래에 표시되는 설명 텍스트를 지정합니다.
1
description: 'some description'
기본값
변수에 값이 지정되지 않았을 때 기본값을 지정하기 위해서입니다.
1
default_value: '5'
레이블 숨기기
변수의 레이블을 숨기는 데 사용합니다.
1
hide_label: 'true'