0
使用MySQL,我會想加入多個多到許多由給定用戶ID表(users_roles和roles_permissions)。 但是我的查詢有些問題,因爲它給出瞭如下的錯誤。SQL加入多個多到多個表
#1054 - 在未知列'users_roles.role_id '的條款'
SELECT roles.name, permissions.name
FROM users_roles, roles_permissions
JOIN roles ON users_roles.role_id = roles.id
JOIN permissions ON roles_permissions.permission_id = permissions.id
WHERE users_roles.user_id = 1 AND roles_permissions.role_id = roles.id
內的phpMyAdmin我的表結構如下:
Table users_roles
id | user_id | role_id
Table roles_permissions
id | role_id | permissions_id
Table roles
id | name | description
Table permissions
id | name | description
不能混合舊隱式和顯式連接語法。 –
那麼,你可以混合使用新舊語法,但最好不要(顯式Join更加限制哪些列可以在ON中使用):'FROM users_roles JOIN roles on users_roles.role_id = roles.id JOIN roles_permissions ON roles_permissions.role_id = roles.id JOIN權限ON roles_permissions.permission_id = permissions.id WHERE users_roles.user_id = 1' – dnoeth
您有鏈接,我可以使用JOINS檢查「新」語法樣式嗎? – CodeWhisperer