SELECT Activity.ActivityDesc, Activity.ActivityDesc, Data.Value, StaffActivity.IsVisible FROM Activity LEFT JOIN StaffActivity ON StaffActivity.ActivityID = Activity.ActivityID LEFT JOIN Data ON Data.ActivityID = StaffActivity.ActivityID AND Data.StaffID = StaffActivity.StaffID WHERE Data.StaffID = 5>Hi SQLers. I am writying an app using a Visual Basic front end to do the queries bu ti wanted to hit up the SQL knowledge here to see if I can make this more efficient. Here is the simplified version.
>-------------------------- >Table1: Activities > >ActivityID >ActivityDesc >-------------------------- >Table2: StaffActivities > >StaffID >ActivityID >IsVisible >-------------------------- >Table3: Data > >Date >StaffID >ActivityID >Value >-------------------------- >>
>SELECT Activity.ActivityDesc, Activity.ActivityDesc, Data.Value, StaffActivity.IsVisible >FROM Activity INNER JOIN (StaffActivity INNER JOIN Data ON (Data.ActivityID = StaffActivity.ActivityID) AND (StaffActivity.StaffID = Data.StaffID)) ON Activity.ActivityID = Data.ActivityID >WHERE (((Data.StaffID)=5)) >>