데이터 집합의 본문에있는 스칼라 함수는 잘 작동합니다. 이것은 SSRS에서 함수를 만드는 데 걸리는 시간보다 훨씬 쉽습니다. 그렇지 않으면 후드 아래에있는 SQL이 모든 작업을 수행하고 아마도 데이터를 더 빨리 반환하기 때문입니다. 두 개의 서로 다른 데이터 세트를 연결해야하는 경우가 아니라면 사용자 정의 표현식을 사용해야 할 것입니다. 가능한 한 데이터 집합에서 대부분의 수학을 사용하는 경향이 있습니다. SSRS에서 사용하는 표현이 많을수록 보고서의 속도가 느려집니다.
나는 간단한 데이터베이스, 간단한 테이블을 생성하고, 스칼라 함수 (예를 들어 간단한 하나)이있는 경우 :
use test-- database I created for concepts
create table Person (id int identity, person varchar(64), orders int);
insert into Person values ('Brett',10),('Brett',20),('John',10)
GO
create function dbo.tester (@intputint int)
returns int
as
begin
declare @return int
select @return = @intputint * 10
return @return
end
GO
내가 때를 잘하는 스칼라 함수를 사용하여 열을 가질 수 있어야한다을 SQL Server 2008에서이 작업을 수행했습니다.
select *, dbo.tester(orders) as OrdersTimesTen
from Person
문제를 설명하는 예제 쿼리를 제공 할 수 있습니까? 그것은 쿼리에서 간단한 ['CASE'] (http://msdn.microsoft.com/en-us/library/ms181765.aspx) 문을 사용해야한다고 생각하십니까? 대안 : [SSRS 표현식] (http://msdn.microsoft.com/en-us/library/ms157328.aspx#ReportFunctions)을 사용하여 시도해 보셨습니까? – Jeroen
식 내부에서 SQL 쿼리를 실행할 수 있습니까? 몇 가지 표현식을 사용했지만 매개 변수 값이나 데이터 집합 필드 만 출력했습니다. – Keith
내가 아직 링크 된 MSDN 페이지를 읽었습니까? 표현이 무엇인지, 그리고 무엇을 할 수 있는지 자세히 설명합니다. – Jeroen