2017-10-20 45 views
0

所以我有了類似SELECT userID from table1 where ...從DATABASE1如何從一個數據集的BI Publisher的設置從選擇值在其他數據集參數

我有dataset2有一些複雜的SQL上DATABASE2必須數據集1有參數... where userID = :userID...

那麼我怎樣才能將我在SQL中從DB1獲得的userID傳遞給我在DB2中運行的SQL呢?

+0

你有兩個數據庫之間的數據庫鏈接? –

+0

我不是管理那個數據庫,但我想這是可能的,這將在BI發佈者的工作? – HoTTab1CH

+0

從你的問題很難說,但在我看來,你真的只是問如何將一個數據庫中的一個表連接到另一個數據庫中的另一個表。數據庫鏈接提供了一個簡單的方法。如果您可以讓連接在SQL中工作,那麼您可以使連接在BIP中工作。但也可能是因爲我的簡化本能使我誤解了你的問題 –

回答

0

下面是一個簡單的例子。像你提到的兩個查詢。我有一個傳入參數從第一個表(父記錄)中選擇一個集合。然後我將用戶ID傳遞給第二個查詢(子記錄)。我將展示數據結構中的工作方式,以及每個父記錄如何具有子記錄。

<?xml version="1.0" ?> 
<dataTemplate name="DATA_DEFINITION_NAME" version="1.0" defaultPackage="DATA_DEFINITION_CODE"> 
<properties> 
<property name="ENCODING" value="windows-1252"/> 
<property name="debug_mode" value="on" /> 
<property name="scalable_mode" value="on" /> 
</properties> 
<parameters> 
<parameter name="i_parameter" dataType="NUMBER" /> 
</parameters> 
<dataQuery> 
<sqlStatement name="Q_TABLE_1"><![CDATA[select userid, username from table1 where column1 = :i_parameter ]]></sqlStatement> 
<sqlStatement name="Q_TABLE_2"><![CDATA[select ValueColumn from table2 where userid = :userid ]]></sqlStatement> 
</dataQuery> 
<dataStructure> 
<group name="users" source="Q_TABLE_1"> 
<element name="username"   value="username"   /> 
<group name="userdata" source="Q_TABLE_2"> 
<element name="ValueColumn"      value="ValueColumn"    /> 
</group> 
</group> 
</dataStructure> 
</dataTemplate>