导航
  • 主页
  • 基础类
  • 应用实例
  • 新技术前沿

sql语句问题

mackly 2003-12-23 02:42:52
我想把一个表中的一个字段通过一个条件更新到另一表的一个字段中去
这样的sql语句错在那
UPDATE usra01
SET usra01.c0105 =
(SELECT max(usr01.档案号)
FROM usr01
WHERE usr01.入厂证号 = usra01.z0108)
FROM usra01
为什么更新后的字段有一些以前不为空的他复为了null
...全文
7 点赞 收藏 5
写回复
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
wzh1215 2003-12-23
UPDATE usra01
SET c0105 =b.maxno
FROM
( SELECT 入厂证号, max(usr01.档案号) as maxno
FROM usr01
group by 入厂证号
) b
on b.入厂证号 = usra01.z0108
回复
gmlxf 2003-12-23
更正:
UPDATE a
SET a.c0105 =
(SELECT max(档案号)
FROM usr01
WHERE 入厂证号 = a.z0108 group by 入厂证号)
FROM usra01 a
回复
victorycyz 2003-12-23
UPDATE usra01
SET c0105 =b.maxno
FROM usra01 a join
( SELECT 入厂证号, max(usr01.档案号) as maxno
FROM usr01
group by 入厂证号
) b
on b.入厂证号 = a.z0108
回复
dlpseeyou 2003-12-23
UPDATE usra01
SET usra01.c0105 =
(SELECT max(usr01.档案号)
FROM usr01
WHERE usr01.入厂证号 = usra01.z0108) tb
回复
gmlxf 2003-12-23
UPDATE a
SET a.c0105 =
(SELECT max(档案号)
FROM usr01
WHERE 入厂证号 = a.z0108 group by 档案号)
FROM usra01 a
回复
发动态
发帖子
MS-SQL Server
创建于2007-09-28

3.2w+

社区成员

MS-SQL Server相关内容讨论专区
申请成为版主
社区公告
暂无公告