您的位置:程序门 -> 其他数据库开发 -> sybase



求一sql,谢谢


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


求一sql,谢谢
发表于:2007-11-12 11:20:55 楼主
有两个表,结构一样,id,bh,name.其中id是唯一值,bh(编号)可能相同,a表和b表里的数据互有交叉,就是说a表里的记录可能在b表里也有.现在想
select   a.*   from   a   where   bh='xxx'   union   select   b.*   from   b   where   bh='xxx'   就是想把a和b表里所有bh='xxx'的记录找出来,但是又不能有重复id,因为可能在a表里的记录在b表里也存在一份,请问要保持id的唯一又不用中间表该怎么先呢?   非常感谢.
发表于:2007-11-12 11:53:261楼 得分:0
sql code
--你这样写,就是合并重复记录,有问题吗? select a.* from a where bh= 'xxx' union select b.* from b where bh= 'xxx'
发表于:2007-11-12 11:55:282楼 得分:0
sql code
--如果你考虑到两边的id、bh都相同,而name不同,这时若只取一个name,可以按如下处理: select t.id, t.bh, min(t.name) as name fromselect a.* from a where bh= 'xxx' union select b.* from b where bh= 'xxx' ) as t group by t.id, t.bh


快速检索

最新资讯
热门点击