首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > Access >

Access SQL语法不支持多个Left Outer Join吗?该怎么解决

2012-02-12 
Access SQL语法不支持多个Left Outer Join吗?Selecta.FClass,a.FParentID,b.FTemplateNameasFParentName,a

Access SQL语法不支持多个Left Outer Join吗?
Select   a.FClass,a.FParentID,b.FTemplateName   as   FParentName,a.FFormatID,a.FFormatName,a.FDefault,a.FVisible   from   t_pnt_form   a   left   outer   join   t_m_form   b   on   a.FParentID=b.FTemplateID   left   outer   join   t_menu_tvw_group   t   on   b.FParentID=t.FID

运行上面的语句报如下错误

其他信息:   语法错误   (操作符丢失)   在查询表达式   'a.FParentID=b.FTemplateID   left   outer   join   t_menu_tvw_group   t   on   b.FParentID=t.FID '   中。

去掉第二个left   outer   join
left   outer   join   t_menu_tvw_group   t   on   b.FParentID=t.FID
就可以,为什么,不支持多个left   outer   join吗?


[解决办法]

每增加一个left join,增加一对().

如:

select *
from ((A
left join B on A.id=B.id)
left join C on A.id=C.id)

[解决办法]
Select a.FClass,a.FParentID,b.FTemplateName as FParentName,a.FFormatID,a.FFormatName,a.FDefault,a.FVisible from
( t_pnt_form a left outer join t_m_form b on a.FParentID=b.FTemplateID )
left outer join t_menu_tvw_group t on b.FParentID=t.FID

[解决办法]
JET SQL不是T-SQL,是有区别的,写两种SQL语句
[解决办法]

Access使用的是Jet-SQL,SQL Server使用的是T-SQL,两者用法上相差很大。


JET SQL 帮助(jet4 access2000)下载地址

http://www.access911.net/index.asp?board=8&recordid=75FAB71E&tt=


但SQL Server 和Access都支持如下格式:

select *
from ((A left join B on A.id=B.id)
left join C on A.id=C.id)

热点排行