gpt4 book ai didi

php - 如何在Mysql中更新和插入多行

转载 作者:行者123 更新时间:2023-11-29 23:12:03 27 4
gpt4 key购买 nike

我有一个数组$feedArray类似这样的

Array ( [0] => array('id'=>'3','val=>'Renta Comerciales'),
[1] => array('id'=>'4','val=>'Renta de Casas'),
[2] => array('id'=>'6','val=>'Venta de Casas '),
[3] => array('id'=>'7','val=>'Venta de Departamentos'),
[4] => array('id'=>'1','val=>'Venta de Terrenos') )

我必须在名为 categoriasPlantilla 的表中进行两个查询

然后表格有三列

plantilla ,categoriaFeed, id

我必须检查数组的 val 是否存在于表的 categoriafeed 列中,然后我必须使用数组 id 更新该 id

如果没有,那么我必须在表中插入一个新行

Plantilla 的值为 11

我知道如何在一个查询中进行多次插入,但如何构建这样一个更新查询?

首先我想做这样的事情

$sql = "INSERT INTO categoriaplantilla (plantilla,categoriafeed,id) values ";
$sqlUpdate = "UPDATE categoriaplantilla ";
foreach($feedArray as $key =>$val)
{
$sqlUpdate . =;
$sql . = ;
}

请帮帮我

感谢和问候

最佳答案

您无法更新一个查询中设置的行。一行 - 一个查询。另外,你可以使用这样的东西

UPDATE table SET field1='aaa', field2='bbb' where id IN (1, 2,4).

但是这个查询将为每一行设置相同的数据。有时我会用这个

INSERT INTO table(field1, field2) VALUES ('aaa', 'bbb')
ON DUPLICATE KEY
UPDATE SET field1='aaa', field2='bbb' where id IN (1, 2,4)

ps 如果您在查询中使用 PK,则几乎在任何情况下您都可能会忘记性能。

关于php - 如何在Mysql中更新和插入多行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28026638/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com