В метабазе можно добавлять переменные с {{variable}}
в запросах, например:
select *
from dashboard_demographic_view
where clinic_id = {{clinic}}
, где dashboard_demographic_view
- вид, созданный заранее. В приведенном выше запросе будут возвращены строки, в которых clinic_id
соответствует тому, что указано в {{clinic}}
.
Тем не менее, мне любопытно, что если мне нужен этот фильтр только тогда, когда я даю {{clinic}}
значение, иначе запрос должен вернуть все строки. Я упоминал фильтр добавления SQL, только если переменная не равна нулю , но в моем случае это не помогает.
select *
from dashboard_demographic_view
where ({{clinic}} is null or clinic_id = {{clinic}})
Приведенный выше запрос дает Невозможно заменить «клинику»: параметр не указан. Найдено: ("клиника") когда я не уточняю clinic
.
Теоретически это можно решить, сделав переменную {{clinic}}
полевым фильтром. Однако по некоторым причинам это невозможно сделать для представления ( # 8800 в метабазе ).
Я ищу обходные пути, отличные от создания реальной таблицы для достижения моих целей. Любая помощь будет оценена.