我有3个表如下:
Table: sys_department
Columns: dept_id dept_name
row: 1 Support
row: 2 HR
row: 3 Billing
Table: sys_groups
Columns: group_id group_name
row: 1 Manager
row: 2 Intern
row: 3 Staff
Table: group_dept_access
Columns: group_id dept_id
row: 1 3
row: 2 1
row: 2 2
row: 3 1
row: 3 2
我想运行一个查询来获取组名列表以及他们有权访问的部门名称。
因此,由于 group_dept_access 中的 group_id 为 3,因此将 1 和 2 列为 dept_id,该组将返回它的 group_name 的 Billing 以及部门名称 Support 和 HR。
使用 JOIN 选择 group_dept_access 时,我能够运行查询以获取 group_name,但我不知道如何查询所有三个表并获取部门。
不幸的是,我无法更改表结构,因为如果说第三个表没有每个组的多个条目会很好,但它是一个现有系统,因此如果更改会中断。在当前服务器上也使用 MySQL 5.1.x,但将来将使用 5.5.x。如果这样的查询在版本之间以不同的方式完成,每个将如何完成?
感谢任何帮助,因为这将帮助我进行其他类似的查询,我将执行。关于它是如何完成的解释也很好,这样我就可以了解这个 3 表查询是如何完成的。先感谢您。