我正在创建数据分析仪表板。我将名为channel_param
的参数传递给MySQL数据源。
我想在此查询中添加一个if语句,首先检查channel_param参数值是否等于“ALL”
如果是“ALL”,则应执行以下查询:
SELECT
c.CountryCode, COUNT(f.`country_code_id`) AS view_count
FROM
fact_access_logs_views f
JOIN dim_country_code c ON f.`country_code_id` = c.`country_code_id`
JOIN dim_time_access d ON f.`access_time_id` = f.`access_time_id`
JOIN dim_channel chn ON f.`channel_id` = chn.`channel_id
如果有任何其他值,此查询应执行:
SELECT
c.CountryCode, COUNT(f.`country_code_id`) AS view_count
FROM
fact_access_logs_views f
JOIN dim_country_code c ON f.`country_code_id` = c.`country_code_id`
JOIN dim_time_access d ON f.`access_time_id` = f.`access_time_id`
JOIN dim_channel chn ON f.`channel_id` = chn.`channel_id`
WHERE
chn.`shortname_chn` = ${channel_param}
我怎样才能做到这一点?
答案 0 :(得分:0)
这就是我使用SQL CASE表达式解决问题的方法。
File file = new File(context.getExternalFilesDir(null), fileName);
我希望这个答案可以帮助人们在将来面对同样的困惑。