2013-10-23 38 views
0

我有一個像這樣的SQL查詢供我在SSRS中使用。將select語句中的值傳遞給同一查詢中的函數 - SQL,SSRS

Select Id , 
     Name , 
     (SELECT RecordNumber FROM dbo.GetLinkedRecordsByType(DTI.TYPEID, DT.ProjectID) AS   
     doctype WHERE  (Id = DTI.SourceId)) AS LinkedDocNo, 
     etc,etc .. From Table_name . 

現在我的條件,我需要的LinkedDocNo值傳遞到另一個功能在同一查詢作爲子查詢。像這樣

dbo.WBS_GetNodePath(LinkedDocNo) . 

但我知道我不能過像我在上面所做的。請告訴我一種實現它的方法。

+0

爲什麼你不能通它? 'dbo.WBS_GetNodePath(SELECT RecordNumber FROM dbo.GetLinkedRecordsByType(DTI.TYPEID,DT.ProjectID)AS doctype WHERE(Id = DTI.SourceId))'應該可以工作 –

+0

我試過了,但我得到一個語法錯誤。關鍵字'SELECT'附近的語法不正確。 – user1699025

+0

如果像這樣'select dbo.WBS_GetNodePath(LinkedDocNo)from(Select Id,Name,(SELECT RecordNumber FROM dbo.GetLinkedRecordsByType(DTI.TYPEID,DT.ProjectID)AS doctype WHERE(Id = DTI.SourceId))AS LinkedDocNo ,...)as q' –

回答

0

好了,你爲什麼不嘗試以下操作: - 它是有效的只有當你的功能表值

,select 'column_name' from dbo.WBS_GetNodePath((SELECT RecordNumber FROM dbo.GetLinkedRecordsByType(DTI.TYPEID, DT.ProjectID) AS   
    doctype WHERE (Id = DTI.SourceId))) 

或者沒有嘗試如出一轍:

--'column_name' from 

    ,select dbo.WBS_GetNodePath((SELECT RecordNumber FROM dbo.GetLinkedRecordsByType(DTI.TYPEID, DT.ProjectID) AS   
    doctype WHERE (Id = DTI.SourceId))) 
+0

太棒了!!!謝謝你哦! – user1699025

相關問題