我是初学者编程学生,我的教科书中没有任何内容可以帮助我解决这个问题!我需要显示这些字段名称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”和过去的一切,它运作得很好,但显示所有项目,而不仅仅是营销部门运行的项目。请帮忙!
答案 0 :(得分:2)
当您使用IN
选择IN (SELECT
时,您必须使用完整的一列,但我可以看到2.显然您的意思是IN (SELECT ID FROM PROJECT...
P.S并且是的, - 你错过了一些加入......