mysql中将一张表另存为_MySQL:根据ID将结果保存到另一个表中

我的查询根据输入的大小随机分组所有组 . 我想将结果发送到另一个包含 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]'";

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值