我有三张桌子
CREATE TABLE guest(
name varchar(100),
ranking int,
PRIMARY KEY (name)
);
CREATE TABLE room(
roomname varchar(100),
wallcolor varchar(100),
rating int,
PRIMARY KEY(roomnane)
);
CREATE TABLE reservation(
name varchar(100),
roomname varchar(100),
day varchar(100),
moveinday int,
moveoutday int,
PRIMARY KEY(roomname, day, start, finish),
FOREIGN KEY(roomname) REFERENCES room(roomname),
FOREIGN KEY(name) REFERENCES guest(name)
);
我正在尝试写一个查询来删除所有没有资格租任何房间的客人,以及他们的预订。有资格租赁是指客人评级大于或等于房间评级。
我试过以下
DELETE FROM guests, reservations
WHERE guests.rating < rooms.rating
这不是完成任务。我能做错什么?我需要保持参照完整性。
我试图改变所有&#34; Lake&#34;客房到&#34; Bay&#34;房间和&#34;海湾&#34;到&#34; Lake&#34;没有明确更改房间的房间。我怎么能这样做?我尝试使用更新查询,但我不知道如何实现这一目标。
感谢任何帮助
答案 0 :(得分:0)
DELETE FROM guests, reservations
WHERE guests.rating < rooms.rating
您没有表格guests
。更改为guest
。表guest
只有rating
字段ranking
。
仔细检查你的代码!