我需要使用下面的模式創建一個數據庫中的幾個疑問:幾個SQL查詢,我無法弄清楚如何寫
Patient(**pid**,pname,address,phone)
Ward(**wid**, wname) // wid=Ward id,
Bed(**wid,bid**) // bid=Bed id
Appointment(**apid**,date,result,pid,cid) // cid=Consultant id, pid=Patient id
Consultant(**cid**,cname,clinId,phone) // clinId=Clinic ID
Allocation(**apid**,pid,wid,bid,date,ex_leave,act_leave) //ex=expected, act=actual
的查詢是:
- 查找如何每個病房都有許多空置的病牀。
- 找到其中它的分配是2013年3月期間,每天做
- 返回那些誰執行最任命誰導致 分配在骨科病房的顧問細節病房。
我試圖創建使用視圖像這樣的第一個:
create view hospital.occupied_beds as
select A.wid,count(*) as o_beds
from hospital.allocation A,hospital.bed B
where A.wid=B.wid and A.bid=B.bid and A.act_leave is null
group by A.wid;
create view hospital.all_beds as
select C.wid,count(*) as all_beds
from hospital.bed C
group by C.wid;
select distinct A.wid,all_beds-o_beds as uo_beds
from hospital.occupied_beds A, hospital.all_beds B
但這種方式不返回,其中所有的牀都是空閒的病房。
請幫我:)
謝謝!第二個和第三個查詢是完美的。第一個不能正常工作,我會嘗試修改它。 – Berlyne 2013-05-06 13:48:11
我修改了上面的查詢。讓我知道它現在是否有效。再次感謝 – cmbaxter 2013-05-06 14:12:20
,這是完美的! – Berlyne 2013-05-06 15:10:05