2016-10-04 88 views
0

如何检索我想用连接编写嵌套查询的数据? 我想从t1显示first_name,designation,并且显示project_namecol2来自t2,其中end_date= (select max(end_date) from project where res_id=?);加入嵌套查询

能否请你帮我写SQL查询

select R.first_name, R.Designation, R.DOB, R.DOJ, R.Department, 
R.city, p.project_name, p.start_date, p.end_date, 
p.end_date+1 as next_avail_date 
from resources R full JOIN project p on (r.res_id=p.res_id) 
where r.u_id='&u_id'; 

我想选择基于以下查询

select project_name from project where end_date= (select max(end_date) from project where res_id=1); 

如何添加它在上面的查询项目名称?

+0

请显示您的代码。 –

+0

select R.first_name,R.Designation,R.DOB,R.DOJ,R.Department, R.city,p.project_name,p.start_date,p.end_date, p.end_date + 1 as next_avail_date from resources R (r.res_id = p.res_id)其中r.u_id ='&u_id';我想从项目中选择project_name,其中end_date =(从res_id = 1的项目中选择max(end_date)); –

回答

0

您可以使用子查询作为FROM CLAUSE的视图,并以与表格相同的方式加入。尝试这样的事情

select R.first_name, 
     R.Designation, 
     R.DOB, R.DOJ, 
     R.Department, 
     R.city,  
     p.project_name, 
     p.start_date, 
     p.end_date, 
     p.end_date+1 as next_avail_date 
    from resources r, (select project_name 
         from project 
         where end_date= (select max(end_date) 
             from project pr 
             where pr.res_id=1)) p 
where r.u_id='&u_id' 
    and r.res_id=p.res_id; 
+0

我得到这个错误ORA-00904:“P”。“RES_ID”:无效标识符 00904. 00000 - “%s:无效标识符” *原因: *操作: 错误在行:15列:17 –