2010-06-24 4 views
0

나는 아음속에 상당히 익숙하며 많은 조인으로 전능적 인 훌륭한 쿼리를하려고 노력 중이다. SQL에서 할 수 있지만 실제로하고 싶다. 하지만 아음속에서이 Subsonic 2.2는 내 조인하는 법을 배울 수 없다.

는 SQL

SELECT dbo.Job.JobId,

 LEFT OUTER JOIN 
      dbo.JobType 
      ON dbo.Job.JobTypeId = dbo.JobType.TypeId 
     LEFT OUTER JOIN 
      dbo.Category 
     INNER JOIN 
      dbo.JobCategory 
      ON dbo.Category.CategoryId = dbo.JobCategory.CategoryId 
      ON dbo.Job.JobId = dbo.JobCategory.JobId 
     LEFT OUTER JOIN 
      dbo.Occupation 
     INNER JOIN 
      dbo.JobOccupation 
      ON dbo.Occupation.OccupationId = dbo.JobOccupation.OccupationId 
      ON dbo.Job.JobId = dbo.JobOccupation.JobId 
     LEFT OUTER JOIN 
      dbo.JobSkillLevelRequired 
     INNER JOIN 
     dbo.Skill 
      ON dbo.JobSkillLevelRequired.SkillId = dbo.Skill.SkillId 
      ON dbo.Job.JobId = dbo.JobSkillLevelRequired.JobId 
,369 dbo.Job

FROM

dbo.Job.JobReference, 
     dbo.Job.Title, 
     dbo.JobCategory.CategoryId, 
     dbo.JobOccupation.OccupationId, 

     dbo.Category.Name 

에서 쿼리입니다 .. 어떻게 해결하지 못할

내 주요 문제는 카테고리와 직업 테이블에 있습니다 .. JobCategory와 JobOccupation은 카테고리와 직업에 대한 링크 테이블입니다. 각각의 직업은 하나 또는 다른 것, 둘 다 또는 둘 다를 가질 수 있습니다.하지만 모든 작업을 다시 가져와야합니다. 범주 및 응용 프로그램이 있는지 여부에 관계없이 나는이 비트를 어떻게 해결할 수 없습니다

INNER가 dbo.Job.JobId = dbo.JobCategory ON dbo.Category.CategoryId = dbo.JobCategory.CategoryId
ON dbo.JobCategory
가입하세요. JobId

아무도 도와 줄 수 있습니까? 음속 2는 기본에 여러 컬럼에 참가할 수 없습니다

답변

0

BEX

덕분에 (내가 BTW C#을 함께 일하고 있어요). 나는 얼마 전에이 우연히 :

subsonic 2 join on multiple columns

난 항상이를 구현하고 싶어하지만 소스를 업데이트 할 수있는 시간을 발견하지 않았습니다. 대신 InlineQuery를 사용하는 것이 좋습니다.

+0

고마워 ... 내가 한 가지 큰 질문 대신 몇 가지 질문 만하면 될 것 같아 ..! – Bex

관련 문제