mysql 根据查询结果集更新
2024-09-28 21:57:05
声明: MySQL4.0之后的版本可以支持下面sql语句进行更新操作
应用场景:
一个表中的字段需要根据查询结果集进行更新,或者从另一表查询获得 其本质还是更新的数据需要查询获得.
例如: user 表中有也用户会员卡数量的字段,而这些数据保存在另一张表membership_card ,membership_card 表的一条记录代表着一个用户拥有某家商店的会员卡.那么要将想更新用户会员卡数量的字段
更新方法有两种
第一种使用连接关键字,如 left join .....等
update user t LEFT JOIN
( SELECT COUNT(DISTINCT user_id,shop_id) as a ,user_id
from membership_card
GROUP BY user_id
) t1 on t.id=t1.user_id
set t.membership_cards = t1.a ; COMMIT;
第二种是直接利用 "," 直接连接"两张表"(查询结果也是张临时表)
update user t ,
( SELECT COUNT(DISTINCT user_id,shop_id) as a ,user_id
from membership_card
GROUP BY user_id
) t1
set t.membership_cards = t1.a
where t.id=t1.user_id; COMMIT;
最新文章
- 纪勇破解QQ号问题
- AWS系列之一 亚马逊云服务概述
- [转]ms sql 2000 下批量 附加/分离 数据库(sql语句)
- dwr使用步骤
- jQuery 自定义事件的学习笔记
- javascript 第27节 jQuery选择器
- java学习笔记 (2) —— Struts2类型转换、数据验证重要知识点
- sip演示
- cocos2dx ——屏幕适配
- html 学习笔记--基础篇
- mybatis-spring最新版下载地址
- Windows环境安装运行:Angular.js
- 面向对象___str__和__repr__
- mysql出现“Incorrect key file for table”解决办法
- 飞思卡尔单片机P&;E开发工具硬件及软件
- 【POJ3349】snowflakes
- js中有哪几种函数?
- [MVC] 自定义ActionSelector,根据参数选择Action
- qt——常用的布局方法
- Python实现的常用排序方法
热门文章
- IE对象最后一个属性后不要加逗号,否则在IE7及以下版本中会报错
- android和httpClient
- redis的主从复制,读写分离,主从切换
- Mysql 5.7.12解压版的安装及配置系统编码
- 扩展html 无边框的input 边框
- C# 图片超过指定大小将压缩到指定大小不失真
- 源码安装Redis
- [51nod1515]明辨是非
- 【BZOJ-1670】Building the Moat护城河的挖掘 Graham扫描法 + 凸包
- org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 1; 前言中不允许有内容。