首页 文章

如何在Pentaho Report Designer中使用多个查询?

提问于
浏览
1

我试图在Pentaho报表设计器中添加两个查询,以便我可以从多个表中获取查询结果 .

这是我的情况:

Query 1:

SELECT
     `raw_crawl_shop_list`.`sales`,
     `raw_crawl_shop_list`.`keyword`,
     `raw_crawl_shop_list`.`number`
FROM
     `raw_crawl_shop_list`
LIMIT 1

Query 2:

SELECT
     `dim_keyword_tag`.`keyword`,
     `dim_keyword_tag`.`tag`
FROM
     `dim_keyword_tag`

My problem:

我想分别使用从两个表中选择的五列(这意味着这些列之间没有任何关系,我只是单独使用它们),但是,在Pentaho Report Designer中 . 我只能使用从一个查询中选择的列 .

如下图所示:

enter image description here

enter image description here

如果我选择查询1,列2选择的列将消失,如果我选择查询2与查询1相同 .

My question:

我如何在单个报告中使用Pentaho报告设计器中的两个查询 OR 有没有办法将这两个sql查询合并为一个,第一个中的三列和第二列中的两列?

谢谢你们!

3 回答

  • 0

    如果两个表都在同一个数据库中,只需将它们加入到单个查询中即可

    SELECT
         `raw_crawl_shop_list`.`sales`,
         `raw_crawl_shop_list`.`keyword`,
         `raw_crawl_shop_list`.`number`,
         `dim_keyword_tag`.`tag`
    FROM
         `raw_crawl_shop_list` JOIN `dim_keyword_tag` ON `raw_crawl_shop_list`.`keyword` = `dim_keyword_tag`.`keyword`
    
  • 4

    在PRD中有两种可能的方法来读取两个查询 .

    • 创建 SUB-REPORT ,然后定义第二个查询 . 查看此wiki了解更多信息 .

    • JOINING 单个查询中的两个表,正如Kotukunui所说的那样 .

  • 0

    这是从多个查询中获取值的另一种方法 .

    添加标签,然后编辑“value”属性表达式 . 根据您的要求设置以下任一公式 . 在“value”属性值中键入您的查询名称 .

    这样您就可以直接引用在JDBC连接中编写的查询 .

    =MULTIVALUEQUERY("yourqueryname")
    =SINGLEVALUEQUERY("yourqueryname")
    

    否则,您可以在表达式中编写查询,该表达式采用以下输入参数,

    SINGLEVALUEQUERY()
    SINGLEVALUEQUERY([query:string]; [column:string])
    SINGLEVALUEQUERY([query:string]; [column:string]; [querytimeout:integer])
    
    MULTIVALUEQUERY([query:string])
    MULTIVALUEQUERY([query:string]; [column:string])
    MULTIVALUEQUERY([query:string]; [column:string]; [querytimeout:integer])
    MULTIVALUEQUERY([query:string]; [column:string]; [querytimeout:integer][limit:integer] )
    

    This会让你更好地了解它 .

相关问题