这句SELECT哪里错了?

大刘0417 2008-07-10 08:34:49

SELECT * FROM FAMILY RIGHT JOIN ADDDATA ON FAMILY.人员编号=ADDDATA.人员编号 WHERE FAMILY.人员编号 IS NULL

目的是查询ADDDATA表中人员编号在FAMILY表中不存在的记录,可明明是有不一样的,可查询的结果什么都没有?

两表结构相同.
...全文
58 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
大刘0417 2008-07-10
  • 打赏
  • 举报
回复
我知道错在哪了,语句是对的,不过老师们给的另一种方法值得学习!
这个错误不在语句,而是路径的问题,另发一贴询问,真是奇怪!
都市夜猫 2008-07-10
  • 打赏
  • 举报
回复
或者还用你方法,改为:

SELECT * FROM ADDDATA LEFT JOIN FAMILY ON FAMILY.人员编号=ADDDATA.人员编号 WHERE FAMILY.人员编号 IS NULL
cbl518 2008-07-10
  • 打赏
  • 举报
回复
SELECT * FROM adddata WHERE 编号 NOT in (SELECT 编号 FROM family GROUP BY 1)
都市夜猫 2008-07-10
  • 打赏
  • 举报
回复
我通常这样写:

select * from adddata where 人员编号 not in ( select 人员编号 from family )
cbl518 2008-07-10
  • 打赏
  • 举报
回复
SELECT B.* FROM FAMILY A RIGHT JOIN ADDDATA B ;
ON A.人员编号=B.人员编号 WHERE A.人员编号 IS NULL

2,727

社区成员

发帖
与我相关
我的任务
社区描述
VFP,是Microsoft公司推出的数据库开发软件,用它来开发数据库,既简单又方便。
社区管理员
  • VFP社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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