我正在使用Oracle SQL Developer。我想在一个表中更新一组行,这是基于剧院中有超过2个电影放映的条件。我试图使用典型的
UPDATE table SET changedData WHERE condition
实施例: 表1-剧院:剧院ID - 主键,剧院名称,城市,容量
表2-电影:actorID - 外键,theaterID-外键,ConcertDate-主键
如果' TheaterID'在电影'表格不止一次出现,然后改变容量'在剧院'表到40000。
我的尝试:
UPDATE Theater set capacity = 40000 WHERE SELECT COUNT(theaterid)=2 FROM
movies;
但我一直在犯错误
Error report:
SQL Error: ORA-00936: missing expression
00936. 00000 - "missing expression"
答案 0 :(得分:0)
试试这个
UPDATE Theater
set capacity = 40000
WHERE theaterID IN (select theaterID
FROM movies GROUP BY theaterID
HAVING COUNT(theaterID )>2)
答案 1 :(得分:0)
更新剧院 设置容量= 40000 在哪里剧院ID IN (选择剧院ID 来自电影 GROUP BY theaterID 有COUNT(*)= 2)