通过多个关联实体的MYSQL select语句
我试图通过多个关联实体检索数据,即公司区域(粉红色)和工作人员(蓝色)。我想检索员工(灰色)在特定公司和区域所做的所有工作(绿色)。我将如何使用现有的数据库结构来实现这一点 我所尝试的: 注意事项: 我知道我可以在公司、地区和工作之间创建一个关联实体,但如果没有额外的实体,是否可以高效地创建关联实体 一些建议:通过多个关联实体的MYSQL select语句,mysql,select,join,Mysql,Select,Join,我试图通过多个关联实体检索数据,即公司区域(粉红色)和工作人员(蓝色)。我想检索员工(灰色)在特定公司和区域所做的所有工作(绿色)。我将如何使用现有的数据库结构来实现这一点 我所尝试的: 注意事项: 我知道我可以在公司、地区和工作之间创建一个关联实体,但如果没有额外的实体,是否可以高效地创建关联实体 一些建议: 没有什么神奇之处:如果您访问一个表以获取列值或连接其他列,那么您肯定需要该表 查询中可能存在的问题:如果一个作业由几个用户执行,则可以多次获得一个作业 最好对所有列使用表前缀。带有前缀
您发布的查询有什么问题?看起来不错,你有什么错误吗?不是预期的结果?请解释一下,不是期望的结果。我只想从在特定地区和公司工作的员工那里得到工作。也许你可以尝试添加更多的职位、员工、地区和公司,看看你发布的查询有什么问题?看起来不错,你有什么错误吗?不是预期的结果?请解释一下,不是期望的结果。我只想从在特定地区和公司工作的员工那里得到工作。也许你可以尝试增加更多的工作岗位、员工、地区和公司,看看?
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'