嗨,我有员工表,我想把他们随机分配到不同的部门,假设员工表结构像这样
id staffname
1 A
2 B
3 C
4 D
5 E
6 F
7 G
8 H
9 I 知道吗??我如何随机选择员工,并将他们分配给多个组,这样就不会有员工在部门重复。
部门1
id staffname
3 C
5 E
6 F
9 I部门2
id staffname
1 A
4 D
7 G 部门3
id staffname
1 A
2 B
8 H 我试着用Laravel/Mysql来做这件事
发布于 2016-04-07 20:59:23
您可以使用与Collection随机和不同的方法。考虑到您将搜索所有员工实体,请尝试如下所示:
$staff = Staff::all();
$i = 0;
while($staff->count() > 0) {
$random = $staff->random(3);
foreach($random as $s) {
$s->departament_id = $i;
}
$staff = $staff->diff($random);
$i++;
}当然,您需要在保存之前检查departament_id,甚至在方法中创建一个,但这就是想法。
希望能帮上忙..。
https://stackoverflow.com/questions/36484118
复制相似问题