我有两张桌子。患者表具有患者姓名、年龄和性别。就诊表有 PatientName、SpecialistName、DateOfVisit 和一个 Age 列,其中还没有任何值。我想根据患者表中患者的年龄更新就诊表中的年龄列。这是我最好的猜测,但我收到的信息是:
“操作必须使用可更新的查询。”
update visits v
set v.age = (
select p.age from
patients p where v.pname = p.pname);
如果您正在使用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
这很简单
update visits v, patients p set v.age = p.age where v.pname = p.pname;
尝试使用from
如下子句:
update visits v
set v.age = p.age
from patients p
where v.pname = p.pname;