ID 所属单位 被选 单位被选人数
1 1 0 0
2 1 0 0
3 1 0 0
4 1 0 0
5 2 0 0
6 2 0 0
7 3 0 0
8....
每个人对应于一个ID,被选中为1,否则为0,
要求:同一个单位的人被选的人数不能超过两个现按这种的条件选取5个人,
结果应为
ID 所属单位 被选 单位被选人数
1 1 1 2
2 1 1 2
5 2 1 2
6 2 1 2
7 3 1 1
SQL语句怎么写?
1 1 0 0
2 1 0 0
3 1 0 0
4 1 0 0
5 2 0 0
6 2 0 0
7 3 0 0
8....
每个人对应于一个ID,被选中为1,否则为0,
要求:同一个单位的人被选的人数不能超过两个现按这种的条件选取5个人,
结果应为
ID 所属单位 被选 单位被选人数
1 1 1 2
2 1 1 2
5 2 1 2
6 2 1 2
7 3 1 1
SQL语句怎么写?
不知道先怎么select出来,即
ID 所属单位 被选 单位被选人数
1 1 0 0
2 1 0 0
5 2 0 0
6 2 0 0
7 3 0 0??????
用临时表呢?我还没有想出来的……
下面语句希望对你有一点启了,我没弄成功:
select a.id, a.com, a.sel, b.sc as selc from tblt a,
(select com, (case when count(id) >= 2 then 2 else count(id) end) as sc from tblt group by com) b
where a.com=b.com
可是用临时表这样的SQL我还是没有想出来怎么写
~~