mysql权限过滤

1.用like做权限过滤

上级部门可以看到下级部门发布的正式文件,下级部门不能看到上级部门发布的正式文件

SELECT
*
FROM
cms_nrgl_st a,
mz_xzjg b
WHERE
a.sys_xzqh = b.xzqh_id
AND a.sys_scbj = '0'
-- 33为登陆者行政区划 3301位文件发布者的行政区划
AND a.sys_xzqh like concat('33','%')
AND a.sys_spzt = 1
AND PK_CMS_NRGL_ST = '105'
ORDER BY
time_stamp DESC,
cfbsj DESC

2.用instr做权限过滤

上级看不到下级部门的非正式文件,下级部门可以看到上级部门的非正式文件。

SELECT
*
FROM
cms_nrgl_st a,
mz_xzjg b
WHERE
a.sys_xzqh = b.xzqh_id
AND a.sys_scbj = '0'
-- 33为登陆者行政区划 3301位文件发布者的行政区划
AND INSTR('33', '3301') > 0
AND a.sys_spzt = 1
AND PK_CMS_NRGL_ST = '105'
ORDER BY
time_stamp DESC,
cfbsj DESC

原文地址:https://www.cnblogs.com/tongcc/p/12322852.html