求一条更新话语
求一条更新语句.A表线别|代码|名称----------------------01|207| 北京01|208| 郑州01|209| 南京30|101|
求一条更新语句.
A表 线别 | 代码 | 名称 ---------------------- 01 | 207 | 北京 01 | 208 | 郑州 01 | 209 | 南京 30 | 101 | 北京 30 | 103 | 石家庄 30 | 104 | 邯郸 30 | 108 | 郑州 B表 标志符 | 线别 | 代码 | 名称 ---------------------- A07 | 01 | 207 | 北京 A07 | 01 | 208 | 郑州 A07 | 01 | 209 | 南京 AS2 | 30 | 101 | 北京 AS2 | 30 | 103 | 天津 AS2 | 30 | 104 | NULL AS2 | 30 | 108 | 郑州 A表是标准字典表..里面含有统一的线路,代码.名称.线路和代码能确定一个站名.
B表的线别和代码是正确的..但是名称不一定正确...且同一组数据的标识符是一样的..
现在要根据A表把B表中数据按标识符把站名同步过来...
如何写update语句..
[解决办法] update a set 名称=b.名称 from b where a.代码=b.代码
[解决办法] update b
set b.名称=a.名称
from a inner join b on a.线别=b.线别 and a.代码=b.代码
where b.名称<>a.名称
[解决办法] 引用: Quote: 引用: update b set b.名称=a.名称 from a inner join b on a.线别=b.线别 and a.代码=b.代码 where b.名称<>a.名称 追问下.. 如果A表里存在重复记录.这条语句该如何改动?
A表是基础表,应该做联合主键约束,即(线别、代码)两个字段做联合主键,不做主键会带来很多麻烦,统计结果导致不正确
如果已经存在,应该先删除重复记录,然后立即加约束