我有一个查询:
SELECT * FROM match ORDER BY id ASC
结果将有这些:
身份证姓名年龄 1 玛丽 18 2爱德华18 3 仁 22
我想配对 Mary 和 Edward,因为他们的年龄相同: 预期结果将是:
1. 玛丽 ID 1 年龄 18 匹配 ID 2 爱德华年龄 18 2.爱德华 ID 2 年龄 18 匹配 ID 1 玛丽年龄 18 3.仁 ID 3 年龄 22 匹配到没有配对
我想用相应的对连续两次插入这对。
这是我的代码:
$result = mysql_query("SELECT * FROM match ORDER BY id ASC");
$size_of_array = sizeof($result);
$i = 1;
while($data = mysql_fetch_row($result)) {
$pair_A = $data[0];
while ($i <= $size_of_array) {
$pair_B = $data[$i];
$insert_A = array(
'id' => $pair_A['id'],
'name' => $pair_A['name'],
'age' => $pair_A['age'],
'partnerName' => $pair_B['name'],
'partnerAge' => $pair_B['age']
'partnerID' => $pair_B['id']
);
//insert statement 1
$insert_B = array(
'id' => $pair_B['id'],
'name' => $pair_B['name'],
'age' => $pair_B['age'],
'partnerName' => $pair_A['name'],
'partnerAge' => $pair_A['age']
'partnerID' => $pair_A['id']
);
//insert statement 2
//Remove duplicates
unset($pair_A);
unset($pair_B);
$i++;
}
}
任何其他建议或代码使它变得容易?