我是初学者,如何用SQL语句实现数据表的关联?(100分)

  • 主题发起人 主题发起人 mchestnut
  • 开始时间 开始时间
M

mchestnut

Unregistered / Unconfirmed
GUEST, unregistred user!
 
 在FOXPRO中表和表的关联用 SET RELATION TO 可以实现表的关联,用SQL的SELECT语句
WHERE 子句虽然可以连接表 ,但是:
表一:YG 中BMBM字段值: 表二 BM中BMBM字段值
YG.BMBM BM.BMBM
01 01
02 02
03 03
02
01
02
01
06
通过WHERE YG.BMBM=BM.BMBM件检索不到 YG.BMBM='06'的记录,如果在FOXPRO中可以用
SET RELA TO BMBM INTO BMBM 实现表的连接,可以看到YG.BMBM的所有记录,只是对应的
BM.BMBM值为空。

 
select YG.BMBM,BM.BMBM from yg,bm
 
select a.*,b.* from yg a
left join bm b on a.bmbm=b.bmbm
 
用外连接
select a.*,b.* from yg a left outer join bm b on a.bmbm=b.bmbm
 
绝对行
使用外连接
select YG.BMBM,BM.BMBM from yg,bm where YG.BMBM=BM.BMBM(*)
 
用join即可搞定
 
sql2000中
select a.*,b.* from yg a
left join bm b on a.bmbm=b.bmbm
 
使用外连接的数据表数目受限吗? 比如
select a.*,b.* from yg a left join bm b on a.bmbm=b.bmbm,left join dp c on a.dp
=c.dp等等
 
后退
顶部