2011-01-18 17 views
0

これは簡単なものだと確信していますが、それでも私は苦労しています。ここで私が持っているものです。MySQL Join Query

 
tbl_user 
======== 
id 
name 
etc 


tbl_jobs 
======== 
id 
job_details 


tbl_job_applications 
==================== 
user_id 
job_id 
application_details 
applied_date 

関係は以下のとおりです。

  • ユーザー - > job_applications(多くの1)
  • 求人 - > job_applications(1対多)

私がしたいのは、jobsテーブルのjob_detailsフィールドとともに、特定のユーザのジョブアプリケーションのリストを取得することだけです。

答えて

0
select name, job_details, application_details, applied_date from 
    tbl_job_applications a, 
    tbl_jobs j, 
    tbl_user u 
where a.user_id=u.id and j.id = a.job_id 
0

これはうまくいくと思います。

SELECT   [tbl_user].[Name] 
       ,[tbl_jobs].[job_details] 
       ,[tbl_job_applicaitons].[application_details] 
FROM   [tbl_user] 
INNER JOIN  [tbl_jobs_applications] 
ON   [tbl_jobs_applications].[user_id]=[tbl_user].[id] 
INNER JOIN  [tbl_jobs] 
ON   [tbl_jobs].[id]=[tbl_job_applications].[job_id] 
0
 
select a.application_details, a.applied_date, j.job_details 
from tbl_job_applications a 
left join tbl_jobs j on a.job_id = j.id 
where a.user_id = user_id 
0
select u.name, ja.application_details, ja.applied_date, j.job_details 
    from tbl_user u 
     inner join tbl_job_applications ja 
      on u.id = ja.user_id 
     inner join tbl_jobs j 
      on ja.job_id = j.id 
    where u.id = @YourUserID 
0
SELECT 
j.job_details, 
a.application_details, 
a.applied_date 
FROM 
tbl_job_applications a inner join tbl_jobs j on j.id = a.job_id and a.user_id = @user_id