--最近遇到一个对单个记录不同类型的权限判断。譬如:我的账号是“9527”,所处的部门是“1”想把我能够查找的文档都显示出来。
--现将SQL语句贴出如下,进行备注,以防忘记
USE MASTER
GO
CREATE TABLE #FILE
(
ID INT IDENTITY(1,1), --标识列
FileName nvarchar(50), --文件名
ReadType int, --0,所有人可读,1,有权部门,2,有权用户
ReadDept nvarchar(50), --有权部门
ReadUser nvarchar(50) --有权用户
)
GO
INSERT INTO #FILE
VALUES('独孤九剑',0,'','')
INSERT INTO #FILE
VALUES('寒冰真气',0,'','')
INSERT INTO #FILE
VALUES('吸星大法',1,'|1|2|3||','')
INSERT INTO #FILE
VALUES('九阴真经',1,' ','')
INSERT INTO #FILE
VALUES('凌波微步',0,'','|9527|9528|9529|')
INSERT INTO #FILE
VALUES('葵花宝典',0,'',' ')
GO
SELECT * FROM #FILE WHERE
CASE ReadType
WHEN 0 THEN 1
WHEN 1 THEN CHARINDEX('|1|',ReadDept)
WHEN 2 THEN CHARINDEX('|9527|',ReadUser)
END >=1
GO
DROP TABLE #FILE
CASE WHEN THEN 简单案例应用
最新推荐文章于 2024-02-18 23:43:34 发布
本文探讨了如何通过SQL语句实现对单个记录不同类型的权限判断,具体应用于文件访问控制场景,通过创建表和插入数据,展示了如何利用CASE语句筛选符合条件的记录。
1485

被折叠的 条评论
为什么被折叠?



