2011-11-17 156 views
0

我有两个表的客房和租赁低于甲骨文更新

create table ROOMS (ROOM_NUM number, FLOOR varchar2(50)) 
create table LEASE (ROOM_NUM number, RENT_RATE number(4,2)) 

描述我想在租约表rent_rate设定为3.50对于所有的房间有楼='地毯'在ROOMS表中。

我看了很多例子,但似乎无法提出解决方案。

我意识到,我没有让ROOM_NUM主键和外键,但我只是用3个记录测试的问题,确保了两个表中存在,他们的房间号码

回答

1
UPDATE LEASE 
SET RENT_RATE = 3.5 
WHERE ROOM_NUM IN (SELECT ROOM_NUM FROM ROOMS WHERE FLOOR='Carpet') 
1
update lease 
    set rent_rate = 3.50 
where room_num in(select room_num from rooms where FLOOR='Carpet'); 

希望这有助于。

0

而且,如果你需要创建行而不是更新现有行:

INSERT INTO LEASE 
(SELECT ROOM_NUM, 3.5 FROM ROOMS WHERE FLOOR = 'Carpet');