Sql 如何在CDE中添加全选选项以选择组件

Sql 如何在CDE中添加全选选项以选择组件,sql,components,pentaho,pentaho-cde,Sql,Components,Pentaho,Pentaho Cde,对于学生项目,我们正在与Pentaho CDE合作创建仪表板。 起初它工作得很好,但现在我们正在添加多个选择组件。 我们在Where语句中将Select组件的参数插入到SQL查询中,但现在出现了一个问题,即不可能在一个Select组件中选择所有元素,而只能在其他组件中选择一个。我们添加的参数越多,样本空间就越小,因为我们无法找到如何在一个选择组件中选择所有选项并将这些全部发送到查询。 在CDE中是否可以向选择组件添加“选择所有元素选项”?或者甚至停用select组件并将此停用发送到SQL查询 我

对于学生项目,我们正在与Pentaho CDE合作创建仪表板。 起初它工作得很好,但现在我们正在添加多个选择组件。 我们在Where语句中将Select组件的参数插入到SQL查询中,但现在出现了一个问题,即不可能在一个Select组件中选择所有元素,而只能在其他组件中选择一个。我们添加的参数越多,样本空间就越小,因为我们无法找到如何在一个选择组件中选择所有选项并将这些全部发送到查询。 在CDE中是否可以向选择组件添加“选择所有元素选项”?或者甚至停用select组件并将此停用发送到SQL查询

我们注意到有一个multipleselect组件,但我们无法处理它所需的自定义参数。 若它能和选定的组件一起工作,那个就好了

提前感谢您的支持

两种方法:

  • 在单选查询中添加(可能是硬编码)一个“All”选项,并让一些JS逻辑学习如何处理它

  • 使用多选组件。但是,请记住,multi-select组件上的参数值在javascript中存储为数组,而参数值将作为逗号分隔的列表传递给查询。因此,如果您希望在SQL查询中使用multi-select参数,则最有可能在in条件中使用它


  • 最后,检查pentaho.log文件。错误和异常将记录在那里。

    使用SQL表达式案例:

    从表中选择*,其中 类似这样的城市(当${city}='ALL'然后''%ELSE${city}结束时)


    如果你不想,就用like

    SELECT * from table_name where column_name = case when ${param} = 'ALL' then column_name else ${param} end