请教用join链接表和用“逗号”链接表之间区别的问题
我用
select * from TABLE_A , TABLE_B left join TABLE_C on (TABLE_B.id = TABLE_C.id)
where TABLE_A.id = TABLE_B.id
为什么说我连接式不支持
改成这样就可以了
select * from (TABLE_A left join TABLE_B on (TABLE_A.id = TABLE_B.id)) left join TABLE_C on (TABLE_B.id = TABLE_C.id)
where TABLE_A.id = TABLE_B.id
到底join和逗号使用区别是什么?
------解决方案--------------------在 SQL-92 标准中,内联接可在 FROM 或 WHERE 子句中指定。
这是 WHERE 子句中唯一一种 SQL-92 支持的联接类型。
WHERE 子句中指定的内联接称为旧式内联接。
如果一个SQL中需要用left join ,则SQL中不能用带逗号的旧式内连接。
并且,Access中多个表关联时,每增加一个表,需要增加一对()
------解决方案--------------------select *
from (TABLE_A
left join TABLE_B on TABLE_A.id = TABLE_B.id)
left join TABLE_C on TABLE_B.id = TABLE_C.id
------解决方案--------------------ACCESS和MS SQL的關聯有些區別,在多個表關聯的時候,需要將前面的關聯語句用括號括起來,MS SQL就可以不需要。
------解决方案-------------------- Access使用的是Jet-SQL。
JET SQL 帮助(jet4 access2000)下载地址
http://www.access911.net/index.asp?board=8&recordid=75FAB71E&tt=