50分求助..................

momeng2003 2004-10-25 08:54:13
有两个表tab1(user_no ,name,write)其中:user_no为主键

user_no name write

1 b 2

tab2 user_no man man_sn
1 f 1
1 f 2

用: select distinct
a.user_no,a.name,a.write from tab1 a , tab2 b
where a.user_no=b.user_no
order by a.write,b.man_sn
查询的时候.显示的是两条记录.我想只显示一条......该怎么写呢??
...全文
106 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
bluelamb 2004-10-26
  • 打赏
  • 举报
回复
select a.user_no,max(a.name),max(a.write) from tab1 a , tab2 b
where a.user_no=b.user_no
group by a.user_no
order by a.write,b.man_sn
nicholaz 2004-10-26
  • 打赏
  • 举报
回复
select b.* from tab1 a,tab2 b where a.user_no = b.user_no and rownum = 1;
bzszp 2004-10-26
  • 打赏
  • 举报
回复
select * from tab1,
(select * from tab2 where rowid in
(select max(rowid) from tab2 group by user_no)
) t2
where tab1.user_no=t2.user_no;
momeng2003 2004-10-26
  • 打赏
  • 举报
回复
对不起....可能我说的要求还不够明白...
....
.....我要的是:由于在tab1中的一条记录,可能对应tab2中的几条记录(当然user_no值是相同的.只是有某些值不同.如:man或man_sn),我只想显示tab1对应tab2中相同的user_no的一条记录.....
ATGC 2004-10-25
  • 打赏
  • 举报
回复
或者说排序得到的第一条?
ATGC 2004-10-25
  • 打赏
  • 举报
回复
那你就是要TBL2中man_sn最小的那条是吧?
momeng2003 2004-10-25
  • 打赏
  • 举报
回复
回复人: ATGC(这一生受了很多委屈吃了很多苦。。)
===========================

有必要啊

对不起...我可能没有说清楚要求........
既要按tab1中的write也要按tab2中的man_sn做排序啊......
ATGC 2004-10-25
  • 打赏
  • 举报
回复
俺看你的结果集,没有必要到tab2表检索记录啊。。

17,377

社区成员

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

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