0

我有两张桌子。患者表具有患者姓名、年龄和性别。就诊表有 PatientName、SpecialistName、DateOfVisit 和一个 Age 列,其中还没有任何值。我想根据患者表中患者的年龄更新就诊表中的年龄列。这是我最好的猜测,但我收到的信息是:

“操作必须使用可更新的查询。”

update visits v
set v.age = (
select p.age from
patients p where v.pname = p.pname);
4

3 回答 3

1

如果您正在使用MSSQL

UPDATE v
SET v.Age = p.Age
FROM visits V INNER JOIN patients p
ON v.pname = p.pname

如果您正在使用MySQL

UPDATE visits V
INNER JOIN patients p
ON v.pname = p.pname
SET v.Age = p.Age

请参阅此链接:使用 JOIN 更新

于 2012-10-17T17:23:11.947 回答
0

这很简单

update visits v, patients p set v.age = p.age where v.pname = p.pname;
于 2012-10-17T17:36:29.030 回答
0

尝试使用from如下子句:

update visits v
set v.age = p.age
from patients p 
where v.pname = p.pname;
于 2012-10-17T17:22:55.363 回答