遇到了一种情况如下
表大概结构
id-max-all
1— 2—3
前端传来[{“id”=>8,“max”=>“999”},{“id”=>9,“max”=>“1001”}]
需要将前端传来的id中的两个数据更新,将max的值赋给改行的all
这时我想到的是用foreach来遍历数组一条条执行,但是这样做就会执行多句sql,数据少的时候还行多了不就会导致效率极低,我就想一句sql就更新实现
于是我看了这篇博客http://t.zoukankan.com/gaara-zhang-p-10655144.html
//用一句sql完成:
//#拼接sql
//$rs_max结构[{"id"=>8,"max"=>"999"},{"id"=>9,"max"=>"1001"}]
$excute = "UPDATE shangpin SET all = CASE id";
//#循环拼接