mysql 更新子表_mysql 在update中实现子查询的方式

当使用mysql条件更新时--最先让人想到的写法

UPDATE buyer SET is_seller=1 WHERE uid IN (SELECT uid FROM seller)

此语句是错误的,会报错 You can't specify target table 'xxx' for update in FROM

这是因为:

mysql的update的一些特点

1、update 时,更新的表不能在set和where中用于子查询;

2、update 时,可以对多个表进行更新(sqlserver不行);

如:update ta a,tb b set a.Bid=b.id ,b.Aid=a.id;

3、update 后面可以做任意的查询,这个作用等同于from;

正确的方式是,例:

简单的更新:

UPDATE `roles_permissions` a SET a.roles_id=89 WHERE a.`roles_name`='0|||管理员'

较为复杂的更新:

例1:

UPDATE order_mall a,(SELECT order_mall.id FROM `order_mall`,`order_goods` WHERE order_mall.`id`=order_goods.`order_id` AND order_goods.order_status=8 AND order_goods.order_goods_type=3) b

SET a.`status`=4

WHERE a.id=b.id

例2:

UPDATE `core_user` a,(SELECT message_push_conf.user_id,message_push_conf.`open_push` FROM `message_push_conf`) b

SET a.`switch_push`=b.open_push

WHERE a.id=b.user_id

联表更新示例:

UPDATE encrypt_user e , user_auth_base u SET account_cid_md5=MD5(CONCAT(e.account,UPPER(u.id_number))) WHERE e.user_id=u.user_id

root过程: 关机 将手机连接电脑(连接方法:先将edl线一头连接到手机,然后用手捏住绿色和黑色线露出的铜线,不要害怕短路,没事的,然后另一头连接电脑,几秒后松开捏住的绿线和黑线,就成功进入9008线刷模式了,可以在电脑上右键此电脑-管理-设备管理器,如果看到9008的端口就代表成功了) 进入9008模式后 安装高通驱动 解压并安装QPST工具 运行Qfil 选择“Flat Build” 选择程序"Browse" 选择"prog_emmc_ufs_firehose_Sdm660_ddr.elf" 点击“Load XML”并选择“rawprogram_unsparse.xml”,然后选择“patch0.xml” 点击"Download" 等待(QFIL会通知一个错误,这是正常的) 重启手机 手机安装magisk manager 打开MagiskManager 点“安装” 注意!!!如果你的系统版本是内测版4.5版本,那就点击直接安装 如果你的系统不是4.5内测版,那就要patch对应的boot.img,否则安装后系统无法打开WiFi patch方法: 我这儿用4.2版本举例,先下载4.2版本的全量卡刷包。下载后解压出boot文件,只需解压出boot文件就行了,将boot文件复制到手机里,方法跟刚才一样,打开magisk manager,点击第二个修复镜像,选择刚才解压出的boot文件,会提示正在下载magisk v16,下载好了会自动刷入,刷入成功后手机根目录/magisk manager文件夹下会出现新的patch好的boot文件,然后我们去网上下载一个叫flashify的app,安装,打开,点刷boot,然后刷入我们刚才patch好的boot文件, 重启,OK,大功告成 注意:暂时没找到方法使用xp模块,所以不要安装刷入XP框架,否则会无限重启,无限重启,无限重启
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值