小编典典

访问查询错误(``from子句中的语法错误'')

sql

$consulta3 = "SELECT * FROM Dept INNER JOIN Userinfo INNER JOIN Checkinout
                     on Dept.DeptName = '$departamento'
                     where Dept.Deptid = Userinfo.Deptid AND Userinfo.Name = Checkinout.name";

我想用此查询执行的操作是:我有一个名为Dept的表,其中包含所有部门名称和ID,具有用户名,部门ID和ID的用户信息。我也有一个名为checkinout的第三个表,该表具有用户ID,并带有时间。

因此,我想(使用部门名称)将Checkinout表中的所有数据从属于该部门的人员那里获取,但是当我尝试该查询时,它给了我一个错误:

syntax error in from clause. sql state 37000 in sqlexecdirect

我无法解决。我正在使用Acces数据库。

非常感谢您的帮助。


阅读 157

收藏
2021-04-14

共1个答案

小编典典

访问绝对需要FROM任何查询子句中的括号,而该查询的子句中要包含多个连接。如果您具有Access可用,请在查询设计器中创建并测试新查询。设计器有用的原因之一是,它知道使数据库引擎满意的括号规则。

从与此类似的查询开始。此时,不必担心基于的过滤Dept.DeptName。只要确保联接设置正确即可。

SELECT *
FROM
    (Dept
    INNER JOIN Userinfo
    ON Dept.Deptid = Userinfo.Deptid)
    INNER JOIN Checkinout
    ON Userinfo.Name = Checkinout.name

正确设置联接后,添加过滤器约束(WHERE Dept.DeptName ...)。

2021-04-14