sql语句问题,急!在线等。

骑猪去东莞 2010-01-18 01:15:27
[size=18px]现有database db1,db2 都有表ec_role 。都有字段 id,nickname,现在要将db1中nickname中包含'_'的记录中的nickname更新到对应db2对应id的nickname.[size]这个数据库是mysql数据库,用sql语句实现。
...全文
120 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
crazylaa 2010-01-19
  • 打赏
  • 举报
回复
update db1.ec_role,db2.ec_role set db2.ec_role.nickname=db1.ec_role.nickname
where db1.ec_role.id=db2.ec_role.id and db1.ec_role.nickname like '%#_%' escape '#';
zhangzhenting 2010-01-18
  • 打赏
  • 举报
回复
下面是运行结果:

执行前:
db1:
id nickname
---------------
1 sdf
2 sdf_s

db2
id nickname
---------------
1 zzt
2 eruh

执行后:
db1 不变
db2
id nickname
---------------
1 zzt
2 sdf_s
zhangzhenting 2010-01-18
  • 打赏
  • 举报
回复
update db1.ec_role,db2.ec_role set db2.ec_role.nickname=db1.ec_role.nickname
where db1.ec_role.id=db2.ec_role.id and db1.ec_role.nickname like '%#_%' escape '#';


根据LZ的意思,好像这样就可以了
lovebin_bin 2010-01-18
  • 打赏
  • 举报
回复
大哥 发错地方了 去MYSQL论坛 一下就帮你解决了
不吃鱼的熊 2010-01-18
  • 打赏
  • 举报
回复
update db2.ec_role,db1.ec_role
set db2.ec_role.nickname = db1.ec_role.nickname
where 1 = 1
and db2.ec_role.id = db1.ec_role.id
and db2.ec_role.id in (select db1.ec_role.id from db1.ec_role where db1.ec_role.nickname like '%#_%' escape '#');

51,397

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧