我的查询根据输入的大小随机分组所有组 . 我想将结果发送到另一个包含 GroupId 和 RegistrationId 的表中,但无论我尝试什么,我都会收到错误 .
查询失败您的SQL语法中有错误;查看与您的MySQL服务器版本对应的手册,以便在“0”附近使用正确的语法WHERE userInformation.RegistrationId = groupInformation.RegistrationId和u'在第1行
我的 RegistrationId 列是 userInformation 表中的主键和 groupInformation 表中的外键 .
$query ="Select * from userInformation ";
$result = mysqli_query($con, $query) or die ("query failed " . mysqli_error($con));
$array = [];
//display user information as array
while (($row = mysqli_fetch_row($result)) == true) {
echo $array[] = $row[0]."
";
}
//mix the array
shuffle($array);
$rows = sizeof($array);
$gp = $rows / $GroupSize;
//based on array
for($i = 0; $i
for($n = 0; $n
$element = $i * $gp + $n;
// this works but i want it in another table
$query = "UPDATE userInformation Set GroupEqualId = '$i' WHERE RegistrationId = '$array[$element]'";
//this does not work
//$query = "INSERT INTO groupInformation(GroupId) '$i' WHERE userInformation.RegistrationId = groupInformation.RegistrationId and userInformation.RegistrationId = '$array[$element]'";
$result = mysqli_query($con, $query) or die ("query failed " . mysqli_error($con));
}
}
这有效,但我必须在用户中创建一个GroupEqualId列 . 这很麻烦 .
$query = "UPDATE userInformation Set GroupEqualId = '$i' WHERE RegistrationId = '$array[$element]'";