我有一个名为admin_permissions
的表,其中列出了导航页面。
我有另一张表admin_permissions_override
,它将覆盖我的标准权限。
这是我当前的查询:
select a.*
from admin_permissions a
LEFT JOIN admin_permissions_override b ON a.sequence = b.page_seq
WHERE a.show_menu = 'Y'
AND a.parent = ''
AND (a.global_access = 'Y' OR a.technical_support = 'Y' OR a.sales = 'Y')
工作正常,但我希望能够包含我的覆盖表,其中包含以下行:
sequence
page_seq
user_seq
type
page_seq
将等于admin_permissions.sequence
user_seq
将为'2'
type
可以是'allow'
或'deny'
所以,如果type = 'allow'
它将覆盖权限并返回该行,如果其'deny'
它将再次覆盖上述查询的标准权限而不返回该行。
我已将此表的LEFT JOIN
添加到我的查询中,但我不知道如何让它返回
admin_permissions
表:
sequence
page
pagetitle
global_access
technical_support
sales
accounts
show_menu
parent