Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 检索;“意见”;在Access 2010中_Sql_Ms Access 2010_Erd - Fatal编程技术网

Sql 检索;“意见”;在Access 2010中

Sql 检索;“意见”;在Access 2010中,sql,ms-access-2010,erd,Sql,Ms Access 2010,Erd,我的SQL代码: SELECT EmpLastName +', '+ EmpFirstName AS ProgramSupervisorName, TeamNo FROM Employee, Salary, ProgramSupervisor WHERE Employee.EmpNo = Salary.EmpNo AND Salary.EmpNo = ProgramSupervisor.EmpNo ORDER BY TeamNo 我意识到Access不支

我的SQL代码:

    SELECT EmpLastName +', '+ EmpFirstName AS ProgramSupervisorName, TeamNo
    FROM Employee, Salary, ProgramSupervisor
    WHERE Employee.EmpNo = Salary.EmpNo
    AND Salary.EmpNo = ProgramSupervisor.EmpNo
    ORDER BY TeamNo
我意识到Access不支持创建视图。我遇到的问题是,我希望按ProgramSupervisor名称对员工进行分组,但ProgramSupervisors和employees都是employee表的一部分。不同类型的员工根据其PosNo进行区分,员工通过一系列表(小时-->ISL)属于ProgramSupervisors 我意识到Access不支持创建视图


对于记录,Access确实支持创建保存的查询,这些查询只是另一个名称的“视图”。(事实上,Access SQL DDL的OLEDB变体确实支持创建视图作为创建保存查询的一种方式。)

回答这个问题的关键在于两个部分:

第一种是像视图一样使用Access存储的查询

第二种方法是在查询中使用不同的列或表别名引用同一个表两次。这已在您对另一个问题的正确答案中列出,请在此处提问:


将这两个答案结合起来,您就有了解决方案。

Access确实有视图,它会调用它们queries@FabianBarney有什么想法吗?只需像使用表一样使用查询名称。与视图的工作方式完全相同。@BenignBaboon。我读了你的问题好几次,都不明白你想从这个表中得到什么。你能再清楚一点吗关于这一点?您只想知道如何使用子查询作为视图?您是否可以先尝试使用该功能,并在发现问题时进一步提问?
   SELECT EmpLastName +', '+ EmpFirstName AS EmpName, ProgramSupervisorName, 
   ProgSupName.TeamNo          
   FROM Employee, ISL, Hourly, Salary, ProgramSupervisor, ProgSupName
   WHERE Employee.EmpNo = Hourly.EmpNo
   AND Hourly.ISLNo = ISL.ISLNo
   AND Employee.EmpNo = Salary.EmpNo
   AND Salary.EmpNo = ProgramSupervisor.EmpNo
   AND ProgramSupervisor.EmpNo = ISL.ProgramSupervisor_EmpNo
   ORDER BY ProgSupName.TeamNo