请教一个问题

wangshi013 2005-10-11 04:04:13
现有表T1,字段name,sex,city;
表T2,字段name,graduatedate,graduateschool;
表T1里有记录两个:张三,男,北京
李某,女,上海
表T2里有多条记录:张三,1998-06-30,张沟小学
张三,2001-06-30,张沟中学
张三,2004-06-30,张沟高中
李某,1995-06-30,某小学
李某,1998-06-30,某某中学
李某,2001-06-30,某某某高中
李某,2005-06-30,某某某某大学
我想要的结果是:姓名,性别,城市,最高学历毕业时间,最高学历毕业大学(如下):
张三,男,北京,2004-06-30,张沟高中
李某,女,上海,2005-06-30,某某某某大学
(假设T1里面name是主键)。
大侠们,请帮小弟看看,十分感谢。
...全文
81 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
wangshi013 2005-10-11
  • 打赏
  • 举报
回复
谢谢大家的帮助,bobfang(匆匆过客) 的答复的对的
mycolors 2005-10-11
  • 打赏
  • 举报
回复
select a.name,a.sex,a.city,b.graduatedate,b.graduateschool from t1 a,t2 b where a.name = b.name and (b.name,b.graduatedate) in (select name,max(graduatedate) from t2);
bobfang 2005-10-11
  • 打赏
  • 举报
回复
select a.name,a.sex,a.city,b.graduatedate,b.graduateschool
from t1 a,
(select name,graduatedate,graduateschool,rank() over(partition by name order by graduatedate desc) listorder from t2) b
where a.name=b.name and b.listorder=1;
wfeng7907 2005-10-11
  • 打赏
  • 举报
回复
select a.name,a.sex,a.city,b.graduatedate,b.graduateschool from t1 a,t2 b where a.name = b.name and (b.name,b.graduatedate) in (select name,max(graduatedate) from t2);

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧