-7
  1. doctorid、dname、複数の患者を治療した医師が受け取った合計料金を表示しますか?
  2. 関連付けられている医師の数が最も多い病院の Hospitalid、hname、htype を表示します。

テーブル

表 1 - 患者

patientid
pname
address
amount
ptype

表 2 - 病院

hospitalid
hname
htype

表3 - 医者

doctorid
dname
specialization
hospitalid
status

表 4 - 請求

billingid
patientid
doctorid
fees
billdate

これまでのところ、これは私が持っているものです:

billing.doctorid、合計 (料金) を totalfees として選択します。 )

4

2 に答える 2

0

すでに回答を得ているようですが、私が書いたので...

Select  d.doctorID, 
        d.dName, 
        Sum(b.fees) [total fees received]
From    doctor d
Join    billing b
        On  d.doctorID = b.doctorID
Group   By  d.doctorID, 
            d.dName
Having  Count(Distinct patientID) > 1

With    CTE As
(
        Select  Rank() Over (Order By Count(d.doctorID) Desc) As priCount, 
                h.hospitalID, 
                h.hName, 
                h.hType, 
                Count(d.doctorID) As doctors
        From    hospital h
        Join    doctor d
                On  h.hospitalID = d.hospitalID
        Group   By  h.hospitalID,
                    h.hName,
                    h.hType
)
Select  hosptitalID,
        hName,
        hType
From    CTE
Where   priCount = 1
于 2013-05-15T17:02:34.060 に答える