mysql批量更新函数怎么写_mysql批量更新写法

mysql批量更新写法

 
 

$namedmp=filter($_POST['namedmp']);

$namedsp=filter($_POST['namedsp']);

$nameula=filter($_POST['nameula']);

$namenva=filter($_POST['namenva']);

$namedcrm=filter($_POST['namedcrm']);

$sql='UPDATE wz_chanpinjieshao

SET titile = CASE id

WHEN 1 THEN ?

WHEN 2 THEN ?

WHEN 3 THEN ?

WHEN 4 THEN ?

WHEN 5 THEN ?

END

WHERE id IN (1,2,3,4,5)';

$stmt = \Db::getStmt($sql);

$isOk=$stmt->execute(array($namedmp,$namedsp,$nameula,$namenva,$namedcrm));

if($isOk){

echo json_encode(array('success' => 1, 'msg' => '更新成功', 'data' => ''));

exit();

}else{

echo json_encode(array('success' => 1, 'msg' => '网络繁忙', 'data' => ''));

exit();

}

更新多个字段sql语句

 
 

UPDATE wz_chanpinjieshao

SET title = CASE id WHEN 1 THEN 11 WHEN 2 THEN 22 WHEN 3 THEN 33 WHEN 4 THEN 44 WHEN 5 THEN 55 END,

summary = CASE id WHEN 1 THEN 11 WHEN 2 THEN 22 WHEN 3 THEN 33 WHEN 4 THEN 44 WHEN 5 THEN 55 END

WHERE id IN (1,2,3,4,5)

下面是封装版

 
 

public function updatechanpinjieshao(){

$nameupdate_ziduan_list=explode(',',$_POST['nameupdate_ziduan']);

$namelist=array();

$duogeziduan='';

foreach ($nameupdate_ziduan_list as $k=>$v) {

$namedmp = filter($_POST['namedmp_' . $v]);

array_push($namelist,$namedmp);

$namedsp = filter($_POST['namedsp_' . $v]);

array_push($namelist,$namedsp);

$nameula = filter($_POST['nameula_' . $v]);

array_push($namelist,$nameula);

$namenva = filter($_POST['namenva_' . $v]);

array_push($namelist,$namenva);

$namedcrm = filter($_POST['namedcrm_' . $v]);

array_push($namelist,$namedcrm);

$duogeziduan.= $v . ' = CASE id WHEN 1 THEN ? WHEN 2 THEN ? WHEN 3 THEN ? WHEN 4 THEN ? WHEN 5 THEN ? END,';

}

$duogeziduan=rtrim($duogeziduan,",");

$sql = 'UPDATE wz_chanpinjieshao SET '.$duogeziduan.' WHERE id IN (1,2,3,4,5)';

$stmt = \Db::getStmt($sql);

$isOk = $stmt->execute($namelist);

if($isOk){

echo json_encode(array('success' => 1, 'msg' => '更新成功', 'data' => ''));

exit();

}else{

echo json_encode(array('success' => 1, 'msg' => '网络繁忙', 'data' => ''));

exit();

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值