update dbo.test2 set dbo.test2.l1h4=
(select b.l1h4 from test1 b inner join test2 c on c.nsrnbm = b.nsrnbm)
如图有test1和test2两张表,主键为BM想把test1里的l1h4里的值update根据BM到test2去,为什么会出现这个错误?
(select b.l1h4 from test1 b inner join test2 c on c.nsrnbm = b.nsrnbm)
如图有test1和test2两张表,主键为BM想把test1里的l1h4里的值update根据BM到test2去,为什么会出现这个错误?
(select top 1 b.l1h4 from test1 where test2.nsrnbm = b.nsrnbm)因为你的条件 关联 如果 有一对多有关系。那么出来就会两值了。
那同时更新三个字段是不是这样子写?update dbo.test2 set
(dbo.test2.l1h4,dbo.test2.l1h8,dbo.test2.l1h9) =
(select l1h4,l1h8,l1h9 from test1 where test2.nsrnbm = b.nsrnbm)
为啥编译说第二行
'(' 附近有语法错误?
那同时更新三个字段是不是这样子写?update dbo.test2 set
(dbo.test2.l1h4,dbo.test2.l1h8,dbo.test2.l1h9) =
(select l1h4,l1h8,l1h9 from test1 where test2.nsrnbm = b.nsrnbm)
为啥编译说第二行
'(' 附近有语法错误?你可以看联机帮助的UPDATE 语法。。
那同时更新三个字段是不是这样子写?update dbo.test2 set
(dbo.test2.l1h4,dbo.test2.l1h8,dbo.test2.l1h9) =
(select l1h4,l1h8,l1h9 from test1 where test2.nsrnbm = b.nsrnbm)
为啥编译说第二行
'(' 附近有语法错误?你可以看联机帮助的UPDATE 语法。。话说我知道了,我那是以前oracle的写法,sqlserver不支持。