--仅做参考:) 用户信息表 ---------- UserID,UserName...... 公告信息表 ----------- BulletinId,BulletinBody........阅读公告信息表 Userid,BulletinId 用户阅读某条公告后在此表添加一条记录! 已读某公告的员工: --示意代码 Select UserID From 用户信息表 A Where Exists ( Select 1 From 阅读公告信息表 Where A.Userid=UserId And BulletinID=公告号)未读某公告的员工: Select UserID From 用户信息表 A Where Not Exists ( Select 1 From 阅读公告信息表 Where A.Userid=UserId And BulletinID=公告号)
用户信息表
----------
UserID,UserName......
公告信息表
-----------
BulletinId,BulletinBody........阅读公告信息表
Userid,BulletinId
用户阅读某条公告后在此表添加一条记录!
已读某公告的员工:
--示意代码
Select UserID
From 用户信息表 A
Where Exists
( Select 1 From 阅读公告信息表 Where A.Userid=UserId And BulletinID=公告号)未读某公告的员工:
Select UserID
From 用户信息表 A
Where Not Exists
( Select 1 From 阅读公告信息表 Where A.Userid=UserId And BulletinID=公告号)
-----------------
可以做逻辑删除或物理删除!
逻辑删除可以用Flag字段来标识,在用户信息表与阅读信息表中另加一字段,来标识该记录是否删除!
物理删除可以用触发器来维护业务关系!用户信息表内的用户删除后,将级联删除阅读信息表中相应的Userid