AccessSQL - 无法正常显示...尝试对数据进行排序

时间:2013-10-14 16:32:49

标签: sql ms-access

我是初学者编程学生,我的教科书中没有任何内容可以帮助我解决这个问题!我需要显示这些字段名称ProjectID,ProjectName,DepartmentPhone,EmployeeNumber,LastName,FirstName,EmployeePhone以及字段名称Department。 最后一个字段名称包含在两个单独的表中,因此我使用WHERE子句使其显示。 但是,我必须专门展示从事“营销”部门分配的项目的员工。 我不能让它工作......如果我删除我当前的WHERE子句而不是部门将无法工作或显示...但我认为我需要另一个Where子句使它只显示市场部的项目。

这是我目前的代码:

SELECT ProjectID, ProjectName, DepartmentPhone, EmployeeNumber, LastName, FirstName, EmployeePhone
FROM PROJECT, DEPARTMENT, EMPLOYEE
WHERE PROJECT.Department = EMPLOYEE.Department
AND           ProjectID IN  
               (SELECT PROJECT ID
                FROM PROJECT
                WHERE Department = 'Marketing')
ORDER BY ProjectID

我在Access中将它作为SQL查询运行,弹出的错误显示

Syntax error in query expression 'PROJECT.Department = EMPLOYEE.Department AND SELECT ProjectID, ProjectName, DepartmentPhone, EmployeeNumber, LastName, FirstName, EmployeePhone
FROM PROJECT, DEPARTMENT, EMPLOYEE
WHERE PROJECT.Department = EMPLOYEE.Department
AND           ProjectID IN  
               (SELECT PROJECT ID
                FROM PROJECT
                WHERE Department = 'Marketing')
ORDER BY ProjectID "

没有“AND”和过去的一切,它运作得很好,但显示所有项目,而不仅仅是营销部门运行的项目。请帮忙!

1 个答案:

答案 0 :(得分:2)

当您使用IN选择IN (SELECT时,您必须使用完整的一列,但我可以看到2.显然您的意思是IN (SELECT ID FROM PROJECT...

P.S并且是的, - 你错过了一些加入......