我有两张桌子。桌子有4列。并且表B有两列。如果id匹配,我想根据条件从表B的一列插入一列tabel A的值。 我怎么能这样做?例如,如果第二个表中的[Movieid] =第二个表中的[IMDBid],则在表2中插入表1 = [CB]的[count]。 我想为全桌做一次。 [专栏] - >这些是colums 我正在使用sql server。
表格1:Movieid,伯爵, 表2:IMDBid,CB 我想要的结果:我想在计数中插入CB列的值,其中Movieid = IMDBid
表格1: (Nick Id,MovieId,Rating,MovId) - > (1,4972,6.25,?)(1,24216,7.25 ,?) 表格2: (Imdbid,标题,ImdbPyId,ID) - > (4972,你好,32450,1)(24216,喜62450,2)
使用值Id(tabel2)插入/填充MovId(tabel1)的值,其中MovieId(tabel1)== Imdbid(tabel2)
答案 0 :(得分:0)
你可以这样做,
UPDATE tabl1
SET count = (SELECT CB FROM tabl2 WHERE IMDBid = Movieid)
但如果您从subquery
返回多个值,那么它会爆炸。
因此,请确保使用适当的函数从该子查询中获取单个值,以满足您的要求。
如果您的表格有1:1
关系,则应该没问题。但是如果它是1:n
那么你需要使用aggragate函数或该子语句中的TOP 1
子句。
答案 1 :(得分:0)
解决方案是UPDATE tabl1 SET count =(SELECT CB FROM tabl2 WHERE IMDBid = Movieid)