Есть ли способ выполнить расчет на основе значения Filter Box в Apache Superset

Я работаю с Apache Superset и пытаюсь выполнить расчет в одном столбце на основе выбора поля фильтра.

Поле фильтра имеет два значения в раскрывающемся списке: Да и Нет.

Если пользователь выбирает «Да», я хочу произвести расчет для одного из столбцов (например, умножить на 1000). Когда пользователь выбирает Нет, я хочу показать столбец без каких-либо вычислений.

Пока мне удалось отфильтровать данные на основе значения Filter Box. Но я не уверен, как использовать оператор CASE на основе значения Filter Box.

Любая помощь приветствуется!

Спасибо


person Bill    schedule 16.03.2021    source источник


Ответы (1)


Вы можете использовать обработку шаблонов jinja, для этого вам нужно создать виртуальный набор данных с помощью SQL Lab View.

Select if({{filter_values('dropdown_key_column')}} == 'Yes',column * 1000, column) from db.tblname

и с помощью исследования создать визуализацию.

Чтобы лучше понять, посмотрите похожие видео на YouTube: Superset Videos

person ANIL PATEL    schedule 18.03.2021
comment
Спасибо за ответ. Я использую MS SQL, поэтому пытаюсь использовать то же самое в предложении Where. WHERE [Status] = {{filter_values('key_name')}} SQL это не устраивает. - person Bill; 18.03.2021
comment
Убедитесь, что ваш {{filter_values ​​('key_name')}} дает строку, число или массив (какой тип данных). Если в фильтре разрешено несколько значений, то это массив. - person ANIL PATEL; 22.03.2021