繁体   English   中英

将最大日期子查询添加到group by子句

[英]Adding a max date subquery to a group by clause

我需要在此报告中添加一个最大交易日期,这样我才能看到不属于查询参数范围内的患者的最新交易日期。 该报告将成为一份水晶报告,我计划将每位患者的最后服务日期记录在组标题中。 以下代码用于获取每个患者的最长时间。 我需要插入结果,因此需要以下报告中列出的患者并给出其最大日期。 无论输入什么日期。 先感谢您。 SQL Server 2005。

select 
patient_id, 
Max(proc_chron) 

from patient_clin_tran pct
group by patient_id

交易代码

select patient_id,

(select p.case_status from patient p where p.patient_id = btb.patient_id and p.episode_id = (select max(episode_id) from patient p2 where p2.patient_id = p.patient_id)) as 'Status',
(select p.lname +', '+ p.fname from patient p where p.patient_id = btb.patient_id and p.episode_id = (select max(episode_id) from patient p2 where p2.patient_id = p.patient_id)) AS 'client',
Coverage_plan_id, 
(select proc_code from billing_transaction bt where bt.clinical_transaction_no = btb.clinical_transaction_no and bt.coverage_plan_id=btb.coverage_plan_id and bt.coverage_plan_id = btb.coverage_plan_id) as 'Procedure',
proc_chron, 
(select billing_amt from billing_transaction bt where bt.clinical_transaction_no = btb.clinical_transaction_no and bt.coverage_plan_id = btb.coverage_plan_id) as 'Billing Amount',
balance_amount,
(select max (accounting_date) from  billing_ledger bl where bl.clinical_transaction_no = btb.clinical_transaction_no and subtype = 'pa' and bl.coverage_plan_id = 'standard') as 'Last Payment on Trans',
(select max (instrument_date) from payment p where p.patient_id = btb.patient_id and  p.coverage_plan_id = 'standard') as 'Last Payment on Acct',
(select sum(balance_amount) from billing_transaction_balance btb2 where btb2.patient_id=btb.patient_id and btb2.coverage_plan_id=btb.coverage_plan_id and proc_chron <= CONVERT(CHAR(6), DATEADD(year, -1, DATEDIFF(day, 0,GETDATE())), 112) + '01' and btb2.coverage_plan_id   in('standard')) AS 'Balance'

from billing_transaction_balance btb

where proc_chron <= CONVERT(CHAR(6), DATEADD(year, -1, DATEDIFF(day, 0, GETDATE())), 112) + '01' and coverage_plan_id   in('standard') 

group by patient_id, proc_chron, coverage_plan_id, balance_amount, clinical_transaction_no

在您的交易代码中,您需要添加所有未汇总到“分组依据”的“选择”列。 我在Select语句中计算了8个非汇总列,因此您必须在Group By中拥有全部8个。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM