我有一个数据库,我用它创建了关系代数。我在关系代数中有一个任务
{ROOM*{PACIENT*{OPERATION(type='plastic')}}}[Room_ID]
表示"选择所有有空间进行操作的房间"这个"命令"在关系代数中是正确的。但是我没有SQL经验,所以我很难将它翻译成SQL命令。我知道我可以像
一样开始SELECT * FROM ROOM
INNER JOIN
但我如何使用sub agregate的多个内部联接(例如{}之间?
我想弄明白或找到一些关于它但我失败了。
答案 0 :(得分:0)
在不知道完整架构的情况下,不可能肯定地说,但听起来你想要这样的东西:
SELECT DISTINCT r.Room_Id
FROM Room r
INNER JOIN Pacient p
ON p.Room_Id = r.Room_Id -- Here put whatever the Foreign key linking these 2 tables is
INNER JOIN Operation o
ON o.Pacient_Id = p.Pacient_Id -- Same here
WHERE [Type] = 'plastic'
此外,了解您正在使用的RDBMS可能会有所帮助。