通过多个关联实体的MYSQL select语句

通过多个关联实体的MYSQL select语句,mysql,select,join,Mysql,Select,Join,我试图通过多个关联实体检索数据,即公司区域(粉红色)和工作人员(蓝色)。我想检索员工(灰色)在特定公司和区域所做的所有工作(绿色)。我将如何使用现有的数据库结构来实现这一点 我所尝试的: 注意事项: 我知道我可以在公司、地区和工作之间创建一个关联实体,但如果没有额外的实体,是否可以高效地创建关联实体 一些建议: 没有什么神奇之处:如果您访问一个表以获取列值或连接其他列,那么您肯定需要该表 查询中可能存在的问题:如果一个作业由几个用户执行,则可以多次获得一个作业 最好对所有列使用表前缀。带有前缀

我试图通过多个关联实体检索数据,即公司区域(粉红色)和工作人员(蓝色)。我想检索员工(灰色)在特定公司和区域所做的所有工作(绿色)。我将如何使用现有的数据库结构来实现这一点

我所尝试的:

注意事项: 我知道我可以在公司、地区和工作之间创建一个关联实体,但如果没有额外的实体,是否可以高效地创建关联实体

一些建议:

  • 没有什么神奇之处:如果您访问一个表以获取列值或连接其他列,那么您肯定需要该表

  • 查询中可能存在的问题:如果一个作业由几个用户执行,则可以多次获得一个作业

  • 最好对所有列使用表前缀。带有前缀FK的列名有点误导——它是命名外键的标准前缀

  • 几点建议:

  • 没有什么神奇之处:如果您访问一个表以获取列值或连接其他列,那么您肯定需要该表

  • 查询中可能存在的问题:如果一个作业由几个用户执行,则可以多次获得一个作业

  • 最好对所有列使用表前缀。带有前缀FK的列名有点误导——它是命名外键的标准前缀


  • 您发布的查询有什么问题?看起来不错,你有什么错误吗?不是预期的结果?请解释一下,不是期望的结果。我只想从在特定地区和公司工作的员工那里得到工作。也许你可以尝试添加更多的职位、员工、地区和公司,看看你发布的查询有什么问题?看起来不错,你有什么错误吗?不是预期的结果?请解释一下,不是期望的结果。我只想从在特定地区和公司工作的员工那里得到工作。也许你可以尝试增加更多的工作岗位、员工、地区和公司,看看?
    select Jobs.idJobs,jobs.Title, jobs.JobDescription, jobs.Deadline, 
    jobs.JobStarted, jobs.jobEnded, jobs.Completed, jobs.Remarks, Priority
    
    from company_area
    
    inner join employees 
    on employees.idEmployees = company_area.FK_Employee
    inner join jobs_employees
    on jobs_employees.FK_Employees = employees.idEmployees
    inner join JobPriority 
    on jobs_employees.FK_Priority = JobPriority.idJobPriority
    inner join jobs
    on jobs_employees.FK_Employees = jobs.idJobs 
    
    where company_area.FK_Company = '2' and company_area.FK_Area = '1'