中間表的使用,使得各個實體表之間相互獨立,降低各個實體表之間的耦合性;
在企業開發中,不提倡在從表中建立外鍵來關聯主表,因為那樣的話,主表與從表的數據耦合性太高,不靈活;
所以使用中間表來存儲實體表之間的關聯后的組合數據;
示例:
t_role (角色表)
t_user (用戶表)
t_user_role(中間表)
用戶表與角色表之間的關系為一對多
我想查詢id為2的用戶所對應的多個角色;sql語句為:
SELECT r.*
FROM t_user_role ur LEFT JOIN t_user u ON u.id=ur.user_id
LEFT JOIN t_role r ON r.roleId=ur.role_id
WHERE ur.user_id = #{id};