SQL Update语句不起作用 - SQL Server
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL Update语句不起作用 - SQL Server相关的知识,希望对你有一定的参考价值。
我试图运行下面的SQL语句(SQL Server),但得到错误
“UPDATE和DELETE语句中的FROM子句不能包含子查询源或连接。”
update fp
set fp.totalcapacity = hc.totalcapacity,
fp.sellablecapacity = hc.sellablecapacity
from [fact].[FinalPosition] fp
join fact.[HotelCapacity] hc
on fp.hotelkey = hc.hotelkey
and fp.staydate = hc.staydate
where fp.staydate = '2016-06-18'
我似乎无法理解为什么我会收到此错误。任何的想法?
答案
我认为你想要的语法是:
update fp
set totalcapacity = hc.totalcapacity,
sellablecapacity = hc.sellablecapacity
from fp join
fact.[HotelCapacity] hc
on fp.hotelkey = hc.hotelkey and fp.staydate = hc.staydate
where fp.staydate = '2016-06-18';
如果你想让fp
引用一个实际的表,请在from
子句中包含它,并使fp
成为表的别名。
以上是关于SQL Update语句不起作用 - SQL Server的主要内容,如果未能解决你的问题,请参考以下文章
ORACLE SQL UPDATE 与 INNER JOIN 不起作用