我有一个项目及其管理它们的母公司的数据库,每个项目和公司都有部门和国家的列表。但是,如果项目的字段DEFAULT设置为true,则dep/国家的列表应改为从其母公司加载。
我的问题是,设计这个的最佳方法是什么?有没有可能在MySQL中"正确"地做到这一点,或者我应该只在应用程序代码中管理它(不太好)。
您可以在联接条件中使用条件表达式。例如,使用MySQL的IF()
函数:
JOIN departments ON departments.departmentID = IF(projects.default,
company_departments.departmentID,
projects_departments.departmentID
)