在 sql 中优化查询的更好方法

问题描述 投票:0回答:0

我已经写了查询,但我想知道使用 groupby 优化它的更好方法

门诊

ID 处理 账单金额 访问开始日期 访问结束日期
1 一般 5000 2023-04-17 2023-04-18
2 头部受伤 10000 2023-03-10 2023-03-15
3 发烧 15000 2023-03-22 2023-03-23
4 休闲行动 3000 2023-03-27 2023-03-27
ID 处理 账单金额 入学 出院
1 一般治疗 3000 2023-04-12 2023-04-18
2 头部受伤 30000 2023-03-09 2023-03-17
3 发烧 40000 2023-03-12 2023-03-24
4 手术 70000 2023-03-25 2023-03-24

跟进电话

ID 处理 访问量 跟进 日期
1 一般 1 2023-04-12 2023-04-18
2 头部受伤 0 2023-03-09 2023-03-17
3 发烧 1 2023-03-12 2023-03-24
4 手术 1 2023-03-25 2023-03-24

 SELECT (
        SELECT  sum(BillAmount)
        FROM    Outpatient
        WHERE   VisitStartDate >= '2023-03-01'
        AND VisitEndDate <'2023-03-31'
        ) AS OPBill
,   (
        SELECT  sum(BillAmount)
        FROM    Inpatient
        WHERE   AdmittedOn >= '2023-03-01'
        AND DischargedOn < '2023-03-31'
        ) AS IPBill
,   (
        SELECT  COUNT(*)
        FROM    FollowUpCalls
        WHERE   [Date] IS NOT NULL 
        AND Visits BETWEEN '2023-03-01' AND '2023-03-31') AS Fvisits

,   (
        SELECT  COUNT(*)
        FROM    FollowUpCalls
        WHERE   [Date] IS NOT NULL
        AND FollowUps BETWEEN '2023-03-01' AND '2023-03-31'
        AND Visits = 1
        AND  [Date] IS NOT NULL
    ) AS FCalls

期望数据按患者 Id 分组

OP比尔 知识产权法案 访问次数 F通话
一般
头部受伤
sql-server
© www.soinside.com 2019 - 2024. All rights reserved.