求一sql语句的写法..a表
字段 a1 a2 a3
数据 1 2 3
4 5 6
7 8 9b表
字段 b1 b2 b3
数据 1 b c
e e f
g h ib2表
字段 b1 b2 b3
数据 a b c
e e f
g h i我这将两个表一起查询. 关联的是a表的a1字段等于b表的b1字段,
现在我想要的结果是如果a1=b1 的数据时会查询b1的数据,
当没有a1=b1 时也能显示a1表的数据.怎么写.
类似 select a.*,b2.* from a left join b2 on a.a1 = b2.b1 的写法,当b2没有数据等于a表的a1时也能查出a表的数据.
字段 a1 a2 a3
数据 1 2 3
4 5 6
7 8 9b表
字段 b1 b2 b3
数据 1 b c
e e f
g h ib2表
字段 b1 b2 b3
数据 a b c
e e f
g h i我这将两个表一起查询. 关联的是a表的a1字段等于b表的b1字段,
现在我想要的结果是如果a1=b1 的数据时会查询b1的数据,
当没有a1=b1 时也能显示a1表的数据.怎么写.
类似 select a.*,b2.* from a left join b2 on a.a1 = b2.b1 的写法,当b2没有数据等于a表的a1时也能查出a表的数据.
select a.*,b2.* from a left join b on a.a1 = b.b1
贴结果出来看看
union all
select a.*,b2.* from a right join b on a.a1 = b.b1全连接?
现在我想要的结果是如果a1=b1 的数据时会查询b1的数据,
当没有a1=b1 时也能显示a1表的数据. 怎么写.
类似 select a.*,b2.* from a left join b2 on a.a1 = b2.b1 的写法,当b2没有数据等于a表的a1时也能查出a表的数据.
---------------------
一时b表;一时b2表
自己连需求都没说明白,别人很难帮你分析解决的哦
1 2 3 1 b c
4 5 6 NULL NULL NULL
7 8 9 NULL NULL NULL 其实左链就得了..是我看乱了..
谢谢楼上各用.
select a.* from a left join b on a.a1 = b.b1
union all
select a.* from a right join b on a.a1 <> b.b1