日期:2014-05-17  浏览次数:20711 次

一个平均分配的问题
存在一个仓位商品拣货的任务
表A 预设的仓位拣货任务,empcode预设为NULL
empcode:拣货员工
sp:仓位代码
sku:商品代码

表B  各员工可管理仓位的列表
员工仓位管理
empid:员工代码
sp:仓位代码

现想将A表中的拣货任务平均分配给各员工,如何搞呢?
表A数据
empcode sp      sku 
------------------------------
NULL C 1008673
NULL C N061A00236150
NULL C N061A00236155
NULL B N061A00236160

表B中数据
empid   sp
-----------
0002 B
0002 C
0004 C
001 B
001 C
0015 B
0015 C
303 C
512 C
按照平均分配的原则应该得到
empcode sp      sku
------------------------------
0002 C 1008673
0004 C N061A00236150
001 C N061A00236155
0015 B N061A00236160

------解决方案--------------------
select distinct B.empid as empcode, B.sp , A.sku
from B
left join A on B.sp=A.sp