首页 > 数据库 >mysql 批量修改,多条件多值的写法

mysql 批量修改,多条件多值的写法

时间:2022-09-28 16:45:10浏览次数:49  
标签:product name 批量 写法 多值 修改 mysql where select

一般的批量修改,都是同一个 where 条件,然后批量修改一批同条件的数据,但是有时候会遇到一种需要根据不同条件,批量修改的操作

具体可以大概参考如下写法:

(1)where 修改条件使用 in 查询多条,在 set 里面利用 w 的属性值再做每条数据的绑定

(2)这里的开启事务,只是方便测试用而已,可以不写

start transaction; -- 开始事务

    update 
        wx_company_info w
    set
        w.product_code = (
            select 
                b.product_code 
            from 
                wx_product b 
            where 
                b.is_top = 1
            and
                b.product_name = w.product_name
        )
    where
        w.product_name in (
            select
                q.product_name
            from
                (
                    select 
                        c.product_name 
                    from 
                        wx_company_info c
                    where 
                        c.product_name is not null 
                    and
                        c.product_name <> ''
                ) q
        )

rollback; -- 回滚或者 commit; 提交

 

标签:product,name,批量,写法,多值,修改,mysql,where,select
From: https://www.cnblogs.com/xuehuashanghe/p/16738642.html

相关文章

  • MYSQL中的json数据操作
    1.2基础查询操作用法提示:如果json字符串不是数组,则直接使用$.字段名如果json字符串是数组[Array],则直接使用$[对应元素的索引id]1.2.1一般json查询使用 json字段......
  • 解决Loading class `com.mysql.jdbc.Driver'. This is deprecated. The new driver cl
    解决Loadingclass`com.mysql.jdbc.Driver'.Thisisdeprecated.Thenewdriverclassis`com.mysql.cj.jdbc.Driver'.Thedriverisautomaticallyregisteredviat......
  • Mysql 数据库SQL脚本导入
    1.进入mysql命令行窗口mysql-uroot-p1234562.展示所有数据库showdatabases;3.选择数据库use数据库名4.展示选择的数据库中所有表showtables;5.导入指定......
  • MYSQL定时执行事件
    开启事件调度器1、确认是否开启SHOWVARIABLESLIKE'event_scheduler';2、开启命令SETGLOBALevent_scheduler=ON;创建事件<创建后默认开启>CREATEEVENT[IFNOT......
  • mysql存储过程的调用方法
    mysql存储过程的调用方法是经常会用到的,下面就为您介绍mysql存储过程的调用方法,希望对您学习mysql存储过程方面会有些许帮助。先进入mysql命令行环境然后创建函数,先要选择数......
  • 一步步搞懂 MySQL 元数据锁(MDL)
    一步步搞懂MySQL元数据锁(MDL)某日,路上收到用户咨询,为了清除空间,想删除某200多G大表数据,且已经确认此表不再有业务访问,于是执行了一条命令‘deletefrombigtable’,但......
  • 一步步搞懂 MySQL 元数据锁(MDL)
    一步步搞懂MySQL元数据锁(MDL)某日,路上收到用户咨询,为了清除空间,想删除某200多G大表数据,且已经确认此表不再有业务访问,于是执行了一条命令‘deletefrombigtable’,但......
  • vue3 ts 类式写法的mixins
    vue-property-decorator混入(mixins)//mixins.tsimport{Vue}from'vue-property-decorator'classMixinsextendsVue{publicname='混入'publicsay......
  • ansible 二进制安装mysql
    1、编辑mysql.sh脚本vimmysql.sql【#/bin/bash#脚本安装mysql,上传安装包至/rootcd/root#安装日志mysql_log=/root/mysql.log#mysql安装包名mysql_package=mysql-8......
  • vue3 封装el-table时,构造$children(类式写法)
    由于业务需求(组件封装),需要在获取el-table下面的el-table-column实例在vue2.x当中直接使用this.$children就可以获取到该实例但是vue3.x弃用了$children,官方建议使用$......