菜鸟求助SQL更新问题。。高手帮忙看下。

ChinaXtHuLang 2012-11-07 05:41:46

看图

表:m_data数据是:
m_id,m_uid,m_specialid
241522  2  19
241516  2  18
241517  2  18
241519  2  19

表:m_my_special数据是:
m_id,m_uid,m_videonum
17  1  1
18  2  3
19  2  1

现在要进行更新m_my_special表
得的结果要如下:
m_id,m_uid,m_videonum
17  1  1
18  2  2
19  2  2

两表的关系是:m_uid对应、
m_data表里的m_specialid对应m_my_special里面的m_id

现在不知道更新SQL怎么写
...全文
133 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
坚_持 2012-11-07
  • 打赏
  • 举报
回复
update m_my_special set m_videonum = 具体的值 where m_id = 18 or m_id = 19 也可以写成 update m_my_special set m_videonum = 具体的值 where m_id = 18 update m_my_special set m_videonum = 具体的值 where m_id = 19 具体的值指 更新后的值
ChinaXtHuLang 2012-11-07
  • 打赏
  • 举报
回复
引用 7 楼 lixzhong 的回复:
试试: SQL code 12 update m_my_special set m_videonum=b.rownum from m_my_special as a inner join (select m_uid,m_specialid,count(1) as rownum from m_data group by m_uid,m_specialid) as b o……
可以了。谢谢啊。。
开启时代 2012-11-07
  • 打赏
  • 举报
回复
试试:
update m_my_special set m_videonum=b.rownum
from m_my_special as a inner join (select m_uid,m_specialid,count(1) as rownum from m_data group by m_uid,m_specialid) as b on a.m_uid=b.m_uid and b.m_specialid=a.m_id
ChinaXtHuLang 2012-11-07
  • 打赏
  • 举报
回复
引用 5 楼 lixzhong 的回复:
木有看懂 m_videonum 这列值是怎么来的
通过m_uid对应m_data里面的m_uid啊。 然后count(0)下就取过去啊。单个更新我会。批量更新不会啊。
开启时代 2012-11-07
  • 打赏
  • 举报
回复
木有看懂 m_videonum 这列值是怎么来的
ChinaXtHuLang 2012-11-07
  • 打赏
  • 举报
回复
。。。。。。。。。。。。。木有成功啊。。
發糞塗牆 2012-11-07
  • 打赏
  • 举报
回复
select xxxx into #t--你自己写 from m_data a inner join m_my_special b on a.m_uid=b.m_uid and a.m_specialid=b.m_id update m_my_special set xxx=b.xxx from m_my_special inner join #t b on m_my_special.主键=b.主键 格式就是上面的,下班了,你自己试试
ChinaXtHuLang 2012-11-07
  • 打赏
  • 举报
回复
引用 1 楼 DBA_Huangzj 的回复:
2005以后,用cte临时存放数据,然后更新目标表。2000的话把cte改成临时表。
用的是2000,我是想问。这个更新的SQL肿么写。。
發糞塗牆 2012-11-07
  • 打赏
  • 举报
回复
2005以后,用cte临时存放数据,然后更新目标表。2000的话把cte改成临时表。

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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