【发布时间】:2015-03-29 13:51:38
【问题描述】:
我有两个表 table1(name, num) 和 table2(index, name, num) 表 1 名称列有长名称,表 2 名称列有长名称和短名称。
表1:
name num
abc.xyz.com 1234
表2:
索引名称编号
1 abc 1234
1 abc.xyz.com 6789
2 abc 1111
2 abc.xyz.com 2222
我需要使用以下条件更新 table2 列“num”:
- 从 table2 获取索引,其中 table1.name 的短名称 = table2.name AND table1.num = table2.num
- 获取长名条目,其中长名的索引=从条件1获得的索引
- 用 table1.num 更新 table2.num
本例中,基于上例
- 我们得到索引 1
- 我们得到 table2 中的第二行
- 将table2中第二行的编号从6789更新为1234
请帮我编写这个复杂条件的 sql 查询..
提前致谢
【问题讨论】:
-
什么是短名和长名?举个例子,我在这里只能看到名称列。怎么知道是短名还是长名?
标签: mysql sql sql-update