我在这个access SQL查询中缺少什么?

我在这个access SQL查询中缺少什么?,sql,ms-access,Sql,Ms Access,我试图使用内部连接函数从多个表中提取特定信息,我认为我的语法有问题-考虑太多或太少()。社区是怎么想的 SELECT Employee.EmployeeID ,Service.HoursWorked FROM ( Equipment INNER JOIN (Equipment Repair) ON Equipment.EquipmentID = Equipment Repair.RepairID ) INNER JOIN ( ( (

我试图使用内部连接函数从多个表中提取特定信息,我认为我的语法有问题-考虑太多或太少()。社区是怎么想的

SELECT Employee.EmployeeID
    ,Service.HoursWorked
FROM (
    Equipment INNER JOIN (Equipment Repair)
        ON Equipment.EquipmentID = Equipment Repair.RepairID
    )
INNER JOIN (
    (
        (
            Service INNER JOIN EMPLOYEE
                ON Service.ProductID = EMPLOYEE.EmployeeID
            ) INNER JOIN (
            OWNER INNER JOIN Property
                ON OWNER.OwnerID = Property.OwnerID
            )
        INNER JOIN SubProperty
            ON Property.PropertyID = SubProperty.PropertyID
        )
    ON Service.PropertyID = Subproperty.PropertyID
    )
INNER JOIN TrainingCourse
    ON EMPLOYEE.EmployeeID = TrainingCourse.EmployeeID
        ON Equipment.EquipmentID = TrainingCourse.EquipmentID ORDER BY Employee.EmployeeID

您的查询正在尝试将多个表连接在一起,但您可能也在尝试使用括号?这些没有你在这里所期望的效果

如果没有(显然是?)假括号,我会理解该查询的含义如下:

选择
Employee.EmployeeID
,Service.hoursweed
来自设备
内部连接(设备维修)
在设备上.EquipmentID=设备维修.RepairID
内部连接服务
内部联接员工
ON Service.ProductID=EMPLOYEE.EmployeeID
内部联接所有者
内连接属性
在OWNER.OwnerID=Property.OwnerID上
内连接子属性
关于Property.PropertyID=子属性.PropertyID
ON Service.PropertyID=子属性.PropertyID
内部连接培训课程
在EMPLOYEE.EmployeeID=TrainingCourse.EmployeeID上
关于设备.EquipmentID=培训课程.EquipmentID
按Employee.EmployeeID排序
但这仍然存在错误,因为许多联接缺少联接条件,有些联接具有多个联接条件


相反,你们需要考虑你们想要表达的东西。结果集中应显示哪些表中的哪些列(这将告诉您要连接哪些表),以及在什么条件下,表Foo中的一行应显示在总结果集中(这将告诉您该表的连接条件)。

请在询问之前先正确设置代码的格式。也许在那之后,你可以不需要任何帮助就可以看到你的问题。你使用的是哪种风格的SQL,比如MySQL、SQL Server等等,标记适当的tech
内部连接
不是一个函数,你的SQL是一堆乱七八糟的东西(不包括格式)。首先计算
字符数,然后计算
字符数。如果它们不相等,那么您已经确定了问题的一部分。@Sankar:标题上写着“访问”,还有一个访问标签。我猜这项技术是MS Access.:-)您正在使用Access查询设计器吗?这应该得到正确的语法。Access sql使用括号很麻烦