文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>Access多表联接 按是/否字段进行查询时的问题

Access多表联接 按是/否字段进行查询时的问题

时间:2011-05-18  来源:宝络

今天只讨论一种情况,那就是进行左外联时(Left Join)
现在有两个表A(AID,BID,equal)(其中equal字段数据类型为:是/否) B(BID,name)
单独对A表进行查询时,可以用:
select * from A where equal=0

select * from A where equal=1
进行查询

当按B Left Join A进行查询时像这样:
select B.BID,B.name,A.AID,A.equal from B Left join A on (B.BID=A.BID) where A.equal=0
进行查询时,如果B表中有一条记录在A表中有其对应的记录,则可以取出
但当B表中的某一条记录在A表不并没有对应记录时,这种方法就行不通了,
假如A表
  AID   BID   equal
  1     1     
 B表
  BID   name
  1     aaa
  2     bbb
这时两表联合表就是
  B.BID   B.name   A.AID   A.equal
  1       aaa      1    
  2       bbb
此时按上面的sql语句只能查询出第一条记录,而第二条记录却不能查询出来
如果想两条记录都查询出来可以这样写
select B.BID,B.name,A.AID,A.equal from B Left join A on (B.BID=A.BID) where A.equal=0 or A.equal is null

相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载