9

我正在编写一个带有内部连接的 SQL 查询,因为

select * from (table1 inner join table2 on table1.city = table2.code)
   inner join table3 on table3.col1 = 5 and table3.col2 = 'Hello'

这给了我错误“不支持连接表达式”。

但是,如果我像这样更改查询,则没有错误

select * from (table1 inner join table2 on table1.city = table2.code)
   inner join table3 on table3.col1 = [SomeColumn] and table3.col2 = [SomeColumn]

为什么 Access 在第一次查询时给我一个错误?

4

2 回答 2

33

很晚了,但我在 MS Access 上遇到了 JOIN 表达式的类似问题,就像这里描述的那样, Access 有时需要查询的 ON 部分内的所有内容都在括号内,即:

SELECT ... JOIN <table> ON (everything here inside the parenthesis) WHERE ...

于 2014-05-13T13:12:50.543 回答
5

为什么 Access 在第一次查询时给我一个错误?

好吧,就像错误消息说的那样,不支持这种形式的 JOIN 表达式。

您可能想尝试以下方法:

SELECT * FROM table1, table2, table3 
WHERE table1.city=table2.code AND table3.col1=5 AND table3.col2='Hello'
于 2013-05-17T15:56:52.350 回答