请教两个表关联的问题,解决问题的话,马上给分

guifu813 2003-08-24 02:22:49
我在用SQL 2000开发程序的时候,需要实现这样一个功能:

两个表根据某一个字段关联,有可能一个表中的数据与另一个表中的数据关联结果有重复的,即:表一中的数据由一条,根据字段关联的时候,另一个表中有两条纪录,我要的结果是:一条关联出来了,另一条显示不关联。

表一、table1
字段名:a b c
数 据:1 2 3
2 4 3

表二、table2
字段名:a b c
数 据:1 2 3
1 4 3
2 1 1
这样我用语句关联的时候,会出现两个结果,
select * from table1 left outer join tabel2 on table1.a=table2.a
结果是:a b c a b c
1 2 3 1 2 3
1 2 3 1 4 3
2 4 3 2 1 3

而我希望的结果是
结果是:a b c a b c
1 2 3 1 2 3
nullnullnull 1 2 3
2 4 3 2 1 3
即:我只要关联的一条记录就行了,如果有多条我就退出关联,只有一条完整纪录。

...全文
68 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
zjcxc 元老 2003-08-24
  • 打赏
  • 举报
回复
按照关联的原理
结果本来就应该是:
a b c a b c
1 2 3 1 2 3
1 2 3 1 4 3
2 4 3 2 1 3
zarge 2003-08-24
  • 打赏
  • 举报
回复
这样行不行
select * from table1 u inner join
(select x.a, x.b, x.c
from table2 x inner join
(select a, max(b) as b from table2 group by a) y
on x.a = y.a and x.b = y.b) as v on u.a = v.a

结果是:a b c a b c
1 2 3 1 2 3
2 4 3 2 1 3

34,587

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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