>I'm trying to select a list of records from 4 tables. What I want is to select only records from the parent table (CASELIST) where the record id is the intersection of CASELIST, ACTLIST, CASEPERLIST (only records whose key value is in all three tables). But I only want to select the records in CASEPERLIST that Inner join with a fourth table (PERSONLIST).
>
>Could anyone tell me if this syntax is correct.
>
>Select DISTINCT CaseList.* From ;
> CaseList Inner Join ActList ;
> Inner Join CasePerList ;
> Inner Join PersonList ;
> ON PersonList.cPerson_id = CasePerList.cPerson_id ;
> ON CasePerList.cCase_id = ActList.cCase_id ;
> ON ActList.cCase_id = CaseList.cCase_id ;
> Into Cursor CaseSQL
>
>Is there a better way (sequential rather than nested Joins) to write this?
>
>TIA
Hard to grasp w/o a sampling :) Yours seem OK. My suggestion is to place "ON ..." parts just following its "join TableName " so you could follow joins easier (Unfortunately designer does it like you do). Also you could try this :
Select CaseList.* From ;
CaseList Inner Join ActList ;
ON ActList.cCase_id = CaseList.cCase_id ;
Inner Join CasePerList ;
ON CasePerList.cCase_id = CaseList.cCase_id ;
Inner Join PersonList ;
ON PersonList.cPerson_id = CasePerList.cPerson_id ;
Into Cursor CaseSQL
Cetin