SQL update语句

updatems_cf01setyfsb=1fromms_cf01whereyfsb=3;可以这样写吗,这样写的原因是什么?... update ms_cf01 set yfsb=1 from ms_cf01 where yfsb=3;

可以这样写吗,这样写的原因是什么?
展开
 我来答
百度网友a800768
2009-06-30 · TA获得超过1841个赞
知道大有可为答主
回答量:1928
采纳率:0%
帮助的人:1720万
展开全部
这么写是可以的.
对一个表数据进行更新操作可以把from [表名]省略.

用from 时一般是从别的关联表中取数据更新时用


update [表1] set [列名]=b.[列名]
FROM [表1] a,[表2] b
where a.[关联列]=b.[关联列]
hgd0324
2009-06-29 · TA获得超过1138个赞
知道小有建树答主
回答量:551
采纳率:0%
帮助的人:397万
展开全部
好像一般不这么写吧:
update ms_cf01 set yfsb=1 from ms_cf01 where yfsb=3

中间的from ms_cf01似乎不需要,至少我没写过这样。我们习惯的写法是:
UPDATE ms_cf01 SET yfsb=1 WHERE yfsb=3

这样就可以操作数据的单行更新了~

加上from的话,是要报错误的在SQL Server 查询分析器里面。

路过~希望可以帮助你~
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友5c91d28
2009-06-30 · TA获得超过5084个赞
知道大有可为答主
回答量:1916
采纳率:50%
帮助的人:1698万
展开全部
习惯问题,实际开发环境经常2个或多个表join来进行更新的情况,加上from以后,可以保持SQL代码的风格统一。

比如

update a
set col=1
from a,b
where a.id=b.id and b.id=2
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
MESEAL
2009-06-30 · TA获得超过929个赞
知道小有建树答主
回答量:855
采纳率:0%
帮助的人:555万
展开全部
update ms_cf01 set yfsb=1 where yfsb=3;

ms_cf01已经是表明需要操作的表,不需要另外加 from ms_cf01。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
SHEncore
2009-06-30 · TA获得超过217个赞
知道答主
回答量:74
采纳率:0%
帮助的人:60.2万
展开全部
错误
update ms_cf01
set yfsb=1
where yfsb=3;

update 语句没有from语句的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(6)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式