免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2572 | 回复: 4
打印 上一主题 下一主题

求助一个SQL语句 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-01-17 11:14 |只看该作者 |倒序浏览
有表A 有字段cl1,cl2,cl3,cl4,cl5,cl6....   其中cl1,cl2,cl3,cl4为主键值
表B有字段cl1,cl2,cl3,cl4,cl50,cl51....  其中cl1,cl2,cl3,cl4为主键值

表A和表B是分别通过不同途径获得的数据,表A必然包含表B
现在想找出差异,就是说表A比表B多的数据.

请会的朋友指点,先谢过了!

论坛徽章:
0
2 [报告]
发表于 2008-01-17 11:21 |只看该作者
select *
from A
where  cl1 || '$' || cl2 || '$' || cl3 || '$' || cl4
not in (
select  cl1 || '$' || cl2 || '$' || cl3 || '$' || cl4
from B
)

论坛徽章:
0
3 [报告]
发表于 2008-01-17 11:23 |只看该作者
如果你的database是ansi模式的,并且informix版本在9.4以上,
可以用
select
   A.*
from A left join B
on A.cl1 = B.cl1
and A.cl2 = B.cl2
and A.cl3 = B.cl3
and A.cl4 = B.cl4
where B.cl1 is null

论坛徽章:
0
4 [报告]
发表于 2008-01-22 00:27 |只看该作者
高手就是高手,很轻松就解决了,而我试了半天了。
多谢了!

论坛徽章:
0
5 [报告]
发表于 2008-01-24 13:40 |只看该作者
,学习。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP