1

複数のテーブルからクエリ結果を取得できるように、Pentaho Report Designer に 2 つのクエリを追加しようとしています。

これが私のケースです:

クエリ 1:

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

クエリ 2:

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

私の問題:

2 つのテーブルから選択した 5 つの列をそれぞれ使用したい (つまり、これらの列の間に関係はなく、別々に使用するだけです)。ただし、Pentaho Report Designer では。1 つのクエリから選択された列しか使用できませんでした。

下の図のように:

ここに画像の説明を入力ここに画像の説明を入力

クエリ 1 を選択すると、クエリ 1 と同じようにクエリ 2 を選択すると、列 2 で選択された列が消えます。

私の質問:

Pentaho Report Designer で 2 つのクエリを 1 つのレポートで使用するにはどうすればよいですか、またはこれら 2 つの SQL クエリを最初の 3 つの列と 2 番目の列から 2 つの列で 1 つのクエリに結合する方法はありますか?

皆さん、ありがとうございました!

4

3 に答える 3

0

これは、複数のクエリから値を取得する別の方法です。

ラベルを追加し、「値」属性式を編集します。要件に応じて、次の式のいずれかを設定します。"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] )

これにより、理解が深まります。

于 2015-08-30T17:08:14.887 に答える
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`
于 2015-07-30T04:37:35.983 に答える