我正在使用以下代码将多条记录插入表中。如您所见,查询处于循环中。每次循环执行时,都会运行单独的 sql 查询来插入它。
我想要一种方法,而不是运行多个查询,只有单个 INSERT sql 查询应该与多个插入语句一起运行。
虽然我的这段代码运行良好,但我需要优化它。
$managed_ailments = unserialize($ailments);
foreach($managed_ailments as $ailment_id)
{
$sql = "INSERT INTO ". TABLE_PATIENTS_AILMENTS_RECORDS ."";
$sql .= "(patient_id, ailment_id, datecreated) VALUES";
$sql .= "($patient_id, $ailment_id, now())";
$query = $mysql->query($sql);
}
这里 $managed_ailments 是一个序列化的数组,我已经反序列化了。数组中可以有一个或多个值。$mysql->query($sql) 是我的自定义函数。
请帮助我将此代码转换为一个可以完成所有操作的单个 sql 查询。
提前致谢。