权限表a
id name
11 一级
12 二级
13 三级
14 四级
用户工号添加权限的时候,可能一个工号会有多个权限,就比如工号0001,有11 12 13 14的权限
现在我想取最高级权限。我用max去改工号最高权限id 14,怎么再把14转化为4,或者四级
1.可以直接用case when的思路,类似case when max(level)=11 then '一级' when max(level)=12 then '二级' ...
2.或者用left join ,可以把工号表中 每个员工和他最高的级别取出来,结果作为主表,关联权限等级那个表,取出中文名称
left join一下呗
你权限表加个工号字段啊,这不就直接查询最高权限了嘛
select 权限表a.name From 员工权限表
left join 权限表a on 权限表a.id=(select max(员工权限表中权限id字段) from 员工权限表 where 员工权限表中权限id字段 = 权限表a.id)
where 工号=‘0001’