2010-02-15 2 views
2

, 그것은 상태 :SSAS 2005에서 여러 데이터 원본을 조인하기 위해 명명 된 쿼리를 만드는 방법은 무엇입니까? 2005 온라인 섹션 "데이터 원본 뷰 (분석 서비스)에서 쿼리 명명 된 정의"SQL 서버에서

명명 된 쿼리는 하나 이상의에서 여러 데이터베이스 테이블을 조인하는 데 사용할 수 있습니다

데이터 원본을 단일 데이터 원본 뷰 테이블에 저장합니다.

아무에게도이 작업을 수행하는 방법에 대한 예제 또는 자습서를 어디에서 찾을 수 있습니까?

편집 : 몇 가지 추가 배경을 제공하기 위해 ...

내가 내 각 데이터베이스에 대한 데이터 소스를 정의 SQL 서버 2005에 대한 SQL Server 비즈니스 인텔리전스 개발 Studio에서 분석 서비스 프로젝트를하고 있어요 다른 서버에 있습니다. 나는 각 데이터 소스에서 테이블의 합집합이 될 명명 된 쿼리를 만들려고합니다. 문제는 명명 된 쿼리에서 쿼리에 대해 단일 데이터 원본을 선택해야한다는 것입니다. 내 프로젝트의 데이터 소스에 대해 알지 못하는이 데이터 소스에 대해 쿼리가 실행됩니다. 그러나 SQL Server 2005 온라인 설명서에 따르면 위에서 수행 한 내 견적을 기반으로 가능한 작업을 수행해야합니다.

답변

1

MSDN은 명명 된 쿼리를 설명하는 링크를 설명하는 링크로 this 링크가 있습니다.

편집 :

SELECT user_id, first_name, 'DB1' as DB FROM users 
UNION 
SELECT user_id, first_name, 'DB2' as DB FROM Database2Name.dbo.users 

얻을 수있는 결과를

user_id first_name DB 
1   Bob   DB1 
2   Joe   DB1 
11   Greg   DB2 
12   Mark   DB2 
같은 : 나는, 당신은 완벽하게 다음과 같이 쿼리를 만들 때 다른 데이터 소스를 칠 테이블을받을 필요가 여러 데이터 소스를 사용하는 생각
+0

해당 링크의 어느 쪽을 사용하는 방법에 대해 설명을 명명 된 쿼리의 여러 데이터 소스 –

+0

이 대답의 SELECT 문은 과거에 큐브에서 사용한 방법입니다. 관련된 객체가 테이블 인 경우 여러 데이터 소스를 통해 쿼리 할 수있는 제한 사항이 있습니다. 뷰/동의어 등에서는 "객체 xxx를 찾을 수 없습니다"라는 오류가 표시되므로 작동하지 않습니다. 여기서 xxx는 뷰/동의어입니다. . –

1

"다중 데이터 원본"으로 여러 데이터베이스를 의미하는 경우 데이터베이스 이름을 완전히 한정하면이 작업을 수행 할 수 있습니다. 나는이 작업을 수행 할 수있는 두 개의 데이터베이스가있는 경우 예를 들어

:

SELECT * FROM DatabaseA.dbo.SomeTable 
JOIN DatabaseB.dbo.OtherTable 
ON DatabaseA.dbo.SomeTable.Id = DatabaseB.dbo.OtherTable.Id 

당신이 dbo 비트 (소유자)를 잊지 마세요 있는지 확인하십시오, 그렇지 않으면 작동하지 않습니다.

당신은 SQL 서버의 여러 원격 인스턴스를 통해 쿼리를 수행 할 수 있습니다 distributed queries입니다의 내가 알고 있어요 "여러 데이터 소스"의 유일한 종류 :

sp_addlinkedserver 'server\instance' 

SELECT * FROM [server\instance].DatabaseA.dbo.SomeTable 
JOIN DatabaseB.dbo.OtherTable 
ON [server\instance].DatabaseA.dbo.SomeTable.Id = DatabaseB.dbo.OtherTable.Id 
+0

비즈니스 인텔리전스 분석 서비스 프로젝트의 데이터 소스를 언급하고 있습니다. –

관련 문제