[英]SQL Query for division equivalent in relational algebra
以下是我的表格,
職員(枚舉,標題,名字),pk:枚舉
Has(枚舉,anum),pk :(枚舉,anum),fk1:Has(枚舉)-> Staff(枚舉),fk2:Has(anum)->面積(anum)
面積(anum,aname),pk:anum
問題:
專門從事每個醫療領域的工作人員(枚舉,名字,標題)。
我嘗試了以下方法
我知道此查詢的關系代數表達式為
(工作人員加入的人數)除以(項目面積(年))
我的SQL查詢如下:
select S.enum
from Staff S
where not exists
(select A.anum from Area A)
minus
(select H.anum
from Has H,Staff S1
where H.enum = S1.enum)
但是沒有行被返回。 我確保在每個領域都有一名專門研究人員。
我認為應該做的是:
必須從所有區域中減去每個工作人員的區域。 如果存在具有所有醫療領域的工作人員,則減法將返回空集,並且將滿足不存在的情況。 然后,我們必須檢索特定工作人員的枚舉,名稱,標題。
注意:
這是我的作業。 我很努力地發布了這個。
select * from Staff
where enum in (
select enum from (
select enum, count(distinct anum) as number_of areas
from Has group by enum
) where number_of areas = (select count(*) from Area)
);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.