小弟新手,在用SQL语句时遇到一个问题,是在SQL SERVER2000中遇到的,系统是XP。
表1
hh(户号) bh(本号) hm(户名) addr(地址) kj(口径) tel(电话) lx(联系人)
1 11 王强 钓鱼台 20 136 我
2 11 鲍贺伟 大道 40 139 一
表2
hh(户号) bh(本号) hm(户名) addr(地址)
1 11 王强 钓鱼台
2 11 鲍贺伟 大道
3 11 梁静 一样
4 11 曹长安 一样
5 11 吴昊岩 一样
6 11 阚伟 一样
7 11 卢峰 一样
我用SQL语句
select a.hh,a.bh,a.hm,a.addr from 表1 a,表2 b where a.hh<>b.hh
SQL中不等于的符号是<>吧?
我就是想查
hh(户号) bh(本号) hm(户名) addr(地址)
并且在表1和表2中户号不相等的记录
这个SQL语句怎么写啊?
你上面那个语句返回的是空集吧,改成这样就行了:
select a.hh,a.bh,a.hm,a.addr from 表2 a,表1 b where a.hh<>b.hh
如果我没有理解错你的意思,SQL 应该如下:
select a.hh,a.bh,a.hm,a.addr
from 表1 a
inner join 表2 b
on a.bh = b.bh
and a.hm = b.hm
and a.addr = b.addr
where a.hh<>b.hh
楼上的应该可以......
两种做法楼上都写了,
第一种:select a.hh,a.bh,a.hm,a.addr from 表2 a,表1 b where a.hh<>b.hh
第二种:select a.hh,a.bh,a.hm,a.addr from 表1 a inner join 表2 b on a.bh = b.bh where a.hh<>b.hh