寒窗轩,寒川的个人网络博客,记录互联网事,学习网络编程、分享工作经验、人生感悟,包括但不限于程序代码、数据库、Office办公、随笔等内容。

mysql数据库表A中某列update更新至表B中某列

大概需求是这样的,有两个表,tablea和tableb,他有相同的id,现在需要将表A中的fielda数据更新至表B中的fielda列,换句话说,要更新表B中的fieldb列,其数据来源于表A的fielda列。貌似mysql不支持update select这种,下面是解决方案:


update tableb b,(select b.id as aid,a.fielda as fieldc
from tablea a,tableb b
where a.id=b.id
group by aid) c
set b.fieldb=c.fieldc
where b.id=c.aid 
经测试,运行正常。数据表如下:
 
表A数据结构及数据如下:
CREATE TABLE IF NOT EXISTS `tablea` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `fielda` int(11) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=9 ;

INSERT INTO `tableb` (`id`, `fielda`) VALUES
(1, 2),
(2, 2),
(3, 2),
(4, 3),
(5, 5),
(6, 10),
(7, 4),
(8, 50);
表B数据结构及数据如下:

CREATE TABLE IF NOT EXISTS `tableb` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `fieldb` int(11) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=9 ;

INSERT INTO `tableb` (`id`, `fieldb`) VALUES
(1, 1),
(2, 1),
(3, 1),
(4, 1),
(5, 1),
(6, 1),
(7, 1),
(8, 1);
经过执行文中解决方案的sql命令,B表的fieldb中的数据变为与A表一致。

文章写得不错?我是土豪我要在线打赏!
在线打赏

昵称:

验证码:验证码

评论:

文章分类
系统
程序
数据
Office
随笔
热门文章
请不要奇怪,为什么最近博客的文章是几年前的内容
Excel动态引用各表格指定单元格数据
开篇第一章
ubuntu24.04无法安装向日葵,提示依赖libgconf-2-4怎么办?
发现一个好网站——春燕文档
ubuntu24.04安装网易云音乐
Ubuntu22.04中用thunar替换默认文件管理器,提示无法启动“TerminalEmulator“的首选应用程序
MySQL如何按每个分类查询10条数据,即MySQL如何每个分类查询10条数据
python读取旧的Excel文件的数据到新的Excel表中
nginx+php如何EventStream流式数据传输
文章推荐
免责声明
关于博主
开篇第一章
随机推荐
QQ.exe - 无法找到组件:没有找到ComRes.dll,因此这个应用程序未能启动。重新安装应用程序可能会修复此问题。
​Excel获取有数据的最后一列以及最后倒数第2列数据
摸死你个性签名集合
html 5学习-video标签插入视频
Yahoo电邮纯为鸡肋
nginx+php如何EventStream流式数据传输
笔记本电脑NVIDIA显视设置不可用,您当前未使用连接到NVIDIA GPU的显视器
word使用技巧,插入带圈的数字。
.htaccess非伪静态url跳转到伪静态url再伪静态
计算php代码执行时间
友情连接
春燕网络
谢润的博客