我有一张格式为
的表格ID NAME NICKNAME MENTOR_NAME MENTOR_NICKNAME
------------------------------------------------
01 Nolan Nole Jonathan Jones
02 Jonathan Jones
字段MENTOR_NAME和MENTOR_NICKNAME包含现有NAME和NICKNAME组合的现有名称(保存为拼写错误)。
为了避免拼写错误问题,我想用MENTOR_ID替换MENTOR_NAME和MENTOR_NICKNAME,从而产生如下表格:
ID NAME NICKNAME MENTOR_ID
------------------------------
01 Nolan Nole 02
02 Jonathan Jonas
我无法弄清楚的是查询语法,这样我就可以避免通过手动执行每个记录或者为此编写一个php脚本。
任何人都可以帮我查询进行此转换吗?
编辑:添加了示例数据。
答案 0 :(得分:1)
这是为了更新现有的表: -
update the_table as a,
the_table as b
set a.mentor_id = b.mentor_id
where a.name = b.mentor_name and a.nickname = b.mentor_nickname;
如果要复制到另一个表中: -
create table another_table
select a.id, a.name, a.nickname, b.mentor_id
from the_table as a
inner join the_table as b
on (a.name=b.mentor_name and a.nickname=b.mentor_nickname);