在SQL

问题描述:

我需要从3代表在2个数据库在ASP.Net使用Access 2007在SQL

表A驻留在一个数据库中,tableB的并表C在另一个合并数据合并3个表,都是在同一台服务器上。

我的 '选择' 语句运行如下:

SELECT * FROM表A 内部联接上tableA.column1 = tableB.column2 myfilepathname.tableB 内对tableB.column2 = tableC.column3

加入myfilepathname.tableC

tableA没有与tableC相关的数据字段,这就是为什么我使用jointBitB将三组数据放在一起。

我不断收到错误消息:“在查询表达式语法错误(缺少运算符) 'tableA.column1 = tableB.column2 INNER JOIN myfilepathname.tableC

上tableB.column2 = tableC.column3'

任何人都可以帮助我出错的地方吗?

+0

你设置链接表和使用Access查询生成器来帮助构建SQL? – June7

+0

我正在使用Visual Studio 2017的Web项目。内置查询生成器不会让我过去'内部连接',所以我创建脚本徒手画。 – russell

+0

为什么你的表声明中有myfilepathname.tableB?它应该只是tableB。 –

尝试在查询中添加括号。在Access中的多个联接看起来象下面这样:

SELECT ... 
FROM ((origintable 
JOIN jointable1 ON ...) 
JOIN jointable2 ON ...) 
+0

正是我所需要的,在查询的连接部分周围添加括号可以立即修复它!谢谢! – russell

+0

补充问题 - 我在搜索中需要多个'AND'条件,现在看起来像这样: – russell

+0

'SELECT ... FROM((ori​​gintable JOIN jointable1 ON ... AND .... AND) JOIN jointable2 ON ......然后......)' – user0221

尝试了这一点:

Select * from tableA 
inner join tableB on tableA.column1 = tableB.column2 
inner join tableC on tableB.column2 = tableC.column3