2016-11-25 20 views
0

我有一個兩列的表:X和Y,我有一個存儲過程的計算。如何在SSRS中同時使用一個數據集中的變量和列?

如果我想在SSRS中創建報告,那麼在數據集中只有變量,沒有列。我也需要專欄。

如何在同一時間使用一個數據集中的變量和列?

下面是代碼:

create procedure Reg 
as 
Declare @sumx float; 
Declare @sumy float; 
Declare @XY float; 

select 
    @sumx= Sum(X) 
    ,@sumy= Sum(y) 
    ,@XY= Sum(y) * Sum(X) 
from stat; 

select 
    [email protected] 
    ,[email protected] 

select 
    X=X 
    ,Y=Y 
from stat 

go 

下面是變量和列。

SQL梟雄工作室的結果:

這裏只是沒有列在變量名:

我想用在SSRS列和變量在同一時間。 我該怎麼做?

回答

0

您將需要添加第二個數據集。

SSRS數據集僅返回查詢中的第一個數據集。您的查詢目前有兩個,如Management Studio中兩個數據集的輸出所證明。

第一個數據集需要返回statXY和第二返回XY

因此,數據集1應該是:

select 
    Sum(X) as stat 
    ,Sum(y) * Sum(X) as XY 
from stat; 

和數據集2將是:

select 
    X 
    ,Y 
from stat 
+0

我試過這個。因此,我需要列和變量在一個數據集中,因爲我想將參數字段作爲過濾器。如果我從X值中選擇,不改變統計值或XY的值。 – Ztrew

+0

@Ztrew你所追求的是完全不可能的。您不能從同一個查詢中返回兩個數據集。你需要***有兩個數據集。 – iamdave

+0

@Ztrew我剛剛意識到你實際上並不需要大量的代碼。我已經更新了相應的查詢。 – iamdave

0

謝謝戴夫!

如果我想過濾我的值,需要創建兩個參數字段?有一個參數字段不能過濾兩個數據集...

+0

這不應該作爲答案發布。但是,是的,一個SSRS參數可以在多個數據集腳本中引用。 – iamdave

相關問題