SQL 部门员工两两比较算法

binghuochanmian binghuochanmian 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
如:A部门内有甲乙丙丁四位员工,
则 甲 需要对 甲乙,甲丙,甲丁,乙丙,乙丁,丙丁进行两两评价投票。
乙 则需要对 甲乙,甲丙,甲丁,乙丙,乙丁,丙丁……

无需跨部门比较,自己不用跟自己对比。每次投票时,想通过一个储存过程,插入数据到评价表,

然后投票人根据WorkID只投自己的选票。表达不清,见谅~



表结构如下:
CREATE TABLE [dbo].[User](            --员工表
[UserID] [varchar](50) NOT NULL, --员工ID
[UserName] [varchar](50) NULL, --员工姓名
[UserOrg] [varchar](50) NULL) --部门


CREATE TABLE [dbo].[UserAssess]( --评价表
[AutoID] [varchar](50) NOT NULL, --自增长ID
[UserID_A] [varchar](50) NOT NULL, --评价对象A
[UserID_B] [varchar](50) NOT NULL, --评价对象B (A,B不能相同)
[WorkID] [varchar](50) NOT NULL, --投票人
[Result] [varchar](50) NULL) --评价结果


测试数据:
INSERT INTO Sys_User(UserID,UserName,UserOrg) VALUES('AA','甲','工程部')   	
INSERT INTO Sys_User(UserID,UserName,UserOrg) VALUES('BB','乙','工程部')
INSERT INTO Sys_User(UserID,UserName,UserOrg) VALUES('CC','丙','工程部')
INSERT INTO Sys_User(UserID,UserName,UserOrg) VALUES('DD','丁','工程部')

INSERT INTO Sys_User(UserID,UserName,UserOrg) VALUES('EE','王','技术部')
INSERT INTO Sys_User(UserID,UserName,UserOrg) VALUES('FF','李','技术部')
INSERT INTO Sys_User(UserID,UserName,UserOrg) VALUES('HH','张','技术部')
INSERT INTO Sys_User(UserID,UserName,UserOrg) VALUES('II','刘','技术部')
...全文

相关推荐

评论 20
收藏 已收藏
分享
返回顶部
binghuochanmian
疑难问题 22,298 成员 121,727 内容