--TRY
UPDATE Station
SET linknum = s.linknum FROM #back b join Station s ON S.stationID = b.stationID
UPDATE Station
SET linknum = s.linknum FROM #back b join Station s ON S.stationID = b.stationID
解决方案 »
- 急,各位帮帮忙
- 请问SQL里面的 "*=" 如何理解
- 大家进来看看~~~
- select CONVERT ( nvarchar(9),9,00)
- 简单排序的问题,帮我看下什么原因。
- 存储过程问题
- 我有一个表A ,其中一个字段title中记录了表B的ID编号,格式为1,2,3,4,30,45,请问如何写一个触发器,实现删除表A中的记录时,把表A中titl
- 请教如果在sql中使用正则表达式
- 一个很简单的SQL 语句---------------在线等(急..........)
- 紧急求助:数据库执行报错,用友852升级过程中报错
- 在SQL Server 2005中如何调试存储过程
- 请问.mssql文件 是什么文件?它有什么作用?
UPDATE Station //中linknum 更新过来
SET linknum = (SELECT linknum FROM #back jion Station ON Station.stationID = #back.stationID )
首先,SET linknum =后面如果接了个子查询,则这个子查询必须用括号括起来:SET linknum =(select xxx...)
如果这个子查询可能返回多个值,还得加top: SET linknum =(select top 1 xxx....)其次,update语句不能这么写,语法不对。
可以这么写:
UPDATE Station
SET linknum = a.linknum
FROM #back a
where Station.stationID = a.stationID--or
UPDATE b
SET linknum = a.linknum
FROM #back a join Station b
on a.stationID = b.stationID
若Station表中stationName和表Town中的townName相同,则把Station表中linknum更新为和Town表中的ID相同。 update station
set linknum=town.id
from station,town
where station.stationname=town.townname
update ta set a.x=select y from tb ..这种写法
而
update a set a.x=(select y from tb where id=a.id) from ta a
这种写法也不推荐
当然,第一种写法等价于 from ta a,tb b where ...