mysql批量更新写法
mysql批量更新写法
<pre>
$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();
}
</pre>
更新多个字段sql语句
<pre>
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)
</pre>
下面是封装版
<pre>
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();
}
}
</pre>
mysql批量更新写法的更多相关文章
- mysql 批量更新与批量更新多条记录的不同值实现方法
批量更新 mysql更新语句很简单,更新一条数据的某个字段,一般这样写: 代码如下: UPDATE mytable SET myfield = 'value' WHERE other_field = ...
- mysql 批量更新
bs_user 表,我们叫他 bu表, 字段user_id,len_id, think_wellUser 表,我们简称为tw表,中的user_id ,len_id 其中tw表的user_id 是bu表 ...
- mysql 批量更新与批量更新多条记录的不同值实现方法
作者: 字体:[增加 减小] 类型:转载 时间:2013-10-02 我要评论 在mysql中批量更新我们可能使用update,replace into来操作,下面小编来给各位同学详细介绍mysql ...
- Mysql 批量更新update的表与表之间操作
Mysql 批量更新update的表与表之间操作 一.方法一 使用User2表数据更新User表: update User as a ,User2 as b set a.role_id=b.set_v ...
- mysql 批量更新常用操作
mysql更新语句很简单,更新一条数据的某个字段,一般这样写:复制代码 代码如下: UPDATE mytable SET myfield = 'value' WHERE other_field = ' ...
- mysql批量更新的两种方式效率试验<二>
Mysql两种批量更新的对比 简介: mysql搭载mybits框架批量更新有两种方式,一种是在xml中循环整个update语句,中间以‘:’隔开,还有一种是使用case when 变相实现批量更新, ...
- c#mysql批量更新的两种方法
总体而言update 更新上传速度还是慢. 1: 简单的insert 速度稍稍比MySqlDataAdapter慢一点 配合dapper 配置文件 <?xml version="1 ...
- Mysql批量更新的三种方式
前言 批量插入由于mysql的VALUES原生支持,使用较为便利. 批量更新的写法一般有三种,在更新数量较少的情况下,前两种性能不相上下.但是在更新字段增加,更新条数较多(500以上)建议使用第三种写 ...
- [转]MySQL批量更新死锁案例分析
文章出处:http://blog.csdn.net/aesop_wubo/article/details/8286215 问题描述 在做项目的过程中,由于写SQL太过随意,一不小心就抛了一个死锁异常, ...
随机推荐
- 基于mosquitto的MQTT客户端实现C语言
在对MQTT的学习过程中 一下的内容对我提供了帮助 https://www.runoob.com/w3cnote/mqtt-intro.html 对MQTT的入门级介绍 很基础讲解了什么是MQTT h ...
- .Net TCP探索(一)——TCP服务端开发(同时监听多个客户端请求)
最近在园子里看了大神写的(面试官,不要再问我三次握手和四次挥手),忍不住写段程序来测试一番. 在网上找了很多例子,大多只实现了TCP点对点通讯,但实际应用中,一个服务器端口往往要监听多 ...
- CSS定位机制:浮动 float及清除浮动的常用方法
CSS的定位机制 1.普通流(标准流) 默认状态,元素自动从左往右,从上往下排列 块元素的特征: 独占一行 可以设置宽高 如果不设置宽度,宽度默认为容器的100% 常见的块元素:div p h1-h6 ...
- django-Xadmin后台管理
0919自我总结 django-Xadmin后台管理 一.安装环境 pip install https://codeload.github.com/sshwsfc/xadmin/zip/django2 ...
- https协议分析
一:什么是HTTPS https全称是超文本传输安全协议,https利用SSL/TLS加密数据包来进行http通信.https开发的主要目的,是提供对网站服务器的身份认证,保护交换数据的隐私与完整性. ...
- libevent::事件
/***************************************************************** 函数功能: 创建事件集 ********************* ...
- unittest断言
assertEquals(expected,actual,msg=msg) # 判断 expected,actual是否一致,msg类似备注,可以为空
- Redis 到底是怎么实现“附近的人”这个功能的?
前言:针对“附近的人”这一位置服务领域的应用场景,常见的可使用PG.MySQL和MongoDB等多种DB的空间索引进行实现.而Redis另辟蹊径,结合其有序队列zset以及geohash编码,实现了空 ...
- Azure EventHub快速入门和使用心得
Azure Event Hubs(事件中心)是一个大数据流式数据摄取服务平台,每秒接受数百万事件; EventHubs 是一个有数据保留期限的缓冲区,类似分布式日志:可缩放的关键在于[分区消费模型], ...
- java 连续数字数组分组
问题: 1. 将Lis list = Arrays.asList(1,2,3,5,8,9,10), 拆分成 [1,2,3] .[5]. [8,9,10] , 2. 再传入一个数字 9, 将匹配数字9的 ...