Need help! I’ve been trying different IF ELSE logic combination to achieve the results. here’s my sample query:
CONTEXT: I have 2 available parameters where user can filter the table. They have the customize the filter if they need 2 or 1 parameters to filter. (user_1_firebase_exp_1 & user_1_firebase_exp_2)
SELECT
cohort_date,
COUNT(DISTINCT user_1.user_pseudo_id) AS user_group_1
FROM dau, unnest(firebase_exp_user_groups) as exp_group_1
LEFT JOIN user_1
ON dau.user_pseudo_id = user_1.user_pseudo_id
{% if user_1_firebase_exp_1_parameter_value == blank %}
WHERE TRUE
{% else if user_1_firebase_exp_2_parameter_value == blank %}
WHERE exp_group_1 = {% parameter user_1_firebase_exp_1 %}
{% else %}
WHERE exp_group_1 IN ({% parameter user_1_firebase_exp_1 %}, {% parameter user_1_firebase_exp_2 %})
{% endif %}
Expected result
-- if user_1_firebase_exp_1._parameter_value != blank AND user_1_firebase_exp_2._parameter_value == blank
WHERE user_group_1 = {% parameter user_1_firebase_exp_1 %}
--- if user_1_firebase_exp_1._parameter_value != blank AND user_1_firebase_exp_2._parameter_value != blank
WHERE user_group_1 IN ({% parameter user_1_firebase_exp_1 %}, {% parameter user_1_firebase_exp_2 %})
--- if user_1_firebase_exp_1._parameter_value == blank and user_1_firebase_exp_2._parameter_value == blank
where statement will not be executed
Hi Mcpol!
Hey, are you looking for handling null values in liquid ?
Hope it helps!
Best,
Leo