语句如下。
SELECT t.*, r.name AS servername s.name AS targetname FROM tasks AS t INNER JOIN servers AS r ON r.serverid = t.srcid INNER JOIN servers AS s ON s.serverid = t.tarid
访问Access数据库会出错,提示如下:
语法错误 (操作符丢失) 在查询表达式 't.srcid=r.serverid LEFT OUTER JOIN servers AS a3 ON t.tarid=a3.serverid' 中
请大侠帮忙看看错在哪里?
...全文
1005打赏收藏
多次联合查询在Access数据库下不能用
表servers中有不同id对应的name, 表tasks中有源srcid和目标tarid。 现需要查询出tasks表中所有的任务,并通过srcid和tarid找出servers表中的name。 语句如下。 SELECT t.*, r.name AS servername s.name AS targetname FROM tasks AS t INNER JOIN servers AS r ON r.serverid = t.srcid INNER JOIN servers AS s ON s
问题解决了,非常感谢各位的帮助,1楼的思路,不过括号的位置有点不对。
SELECT t.*, r.name AS servername, s.name AS targetname FROM (tasks AS t INNER JOIN servers AS r ON r.serverid = t.srcid) INNER JOIN servers AS s ON s.serverid = t.tarid
谢谢楼上的解答,但我加上括号后,还是报相同的错误!
另外语句中少了个逗号
SELECT t.*, r.name AS servername, s.name AS targetname FROM (tasks AS t INNER JOIN servers AS r ON r.serverid = t.srcid INNER JOIN servers AS s ON s.serverid = t.tarid)
SELECT t.*, r.name AS servername s.name AS targetname FROM (tasks AS t INNER JOIN servers AS r ON r.serverid = t.srcid INNER JOIN servers AS s ON s.serverid = t.tarid)
--加上括号