mysql - 使用条件mysql将数据从一个表插入另一个表
问题描述
您好我有以下问题我有两个表假设这些是表 1 和表 2。表 1 有 A、B、C、D 列,表 2 有 A、B、C、D、E、F、G 列, H, I 我需要在 F、G、H 列的表 2 中插入表 1 中的数据 B、C、D,使用条件为 A = A
我不能使用
INSERT INTO table2 (F, G, H) SELECT B, C, D FROM table1;
因为数据是乱序的,所以在插入数据时它们会被混合
是否可以做出符合要求的句子,如果符合,会以什么方式?
解决方案
我需要将表 1 中的数据 B、C、D 插入 F、G、H 列的表 2 中,使用条件为 A = A
我想你想要update
,而不是insert
:
update table2 t2
inner join table1 t1 on t1.a = t2.a
set t2.f = t1.b, t2.g = t1.c, t2.h = t1.d
对于 中的每一行,这将在;table2
中搜索table1
匹配。a
找到时,它会更新列和的列f
、、的值。g
h
table2
a
b
c
table1
为了使其始终如一地工作,a
应该是两个表中的唯一键。
推荐阅读
- istio - 通过 ISTIO side car 减少内存使用
- sass - 基于类的变量值
- android - 结合 RxJava Observables、SharedPreferences 和 MVP
- javascript - 单击链接时使用 js 打开带有悬停和关闭菜单的下拉菜单
- javafx - Fitting rotated ImageView into Application Window / Scene
- python-2.7 - 使警告崩溃python脚本
- html - 使用 VBA 获取嵌套表和 Div 中的值
- python - Python 变量名
- javascript - 检测 URL 中的特定哈希
- python-3.x - 如何通过mac终端安装python 3?