我正在學習計算機科學,並且正在研究數據庫系統。我在抓取某些部分時遇到困難。關係代數聯合,聯接和相交
說我有如下關係:
Lecturers(LecturerID, Name, DeptID)
Course(DeptID, CrsCode, CrsName, Description)
我注意到,他們都有着共同的屬性,DEPTID,因此他們是聯盟兼容。
我該如何列出屬於計算機科學系(CS)或電子工程系(eEng)的講師授課的所有課程?
我的答案是使用與選擇相交。以下內容是否正確或接近商標?
πDeptID,CrsName(Course) intersection πDeptID,Name(σDeptID = CS or DeptID = eEng(Lecturers))
我確信連接可以在這裏使用,但我不確定如何使用它的謂詞。
感謝您的幫助。一旦我明白在幾種情況下使用什麼,我相信其餘的會更容易。
感謝您的任何幫助。
當然,表達式可以用來執行其他表達式的動作。感謝SQL,但我不知道如何在關係代數中表達。 – Lee 2011-05-24 11:28:28
我會將此標記爲答案。我不知道同一個功能有很多不同的名字。內部連接是我被教導爲自然連接。我只需要解決如何使用rel來表達這個問題。代數,我想我已經破解它: 'σLecturers.DeptID= CS或Lecturers.DeptID = eEng(πDeptID,CrsName(Course))x(πDeptID,Name(Lecturers))' – Lee 2011-05-24 12:21:42