我遇到错误-
尝试在Teradata中运行查询的以下部分时,无法嵌套聚合操作。
当SeqCount = 2且手术数据与第一次手术相同时,我希望第二次手术日期(SecondSurgery)为空,否则返回第二次手术数据。
任何帮助将不胜感激。
SELECT
pat_id,
PatientMRN,
PatientName,
AdmitDate,
DischargeDate,
MIN(case when SeqCount=1 then ORProcName else null end) as FirstProcedure,
MIN(case when SeqCount=1 then SurgeryDate else null end) as FirstSurgery,
MIN(case when SeqCount=2 then ORProcName else null end) as SecondProcedure,
MIN(case when SeqCount=2 and SurgeryDate = FirstSurgery then NULL else SurgeryDate end) as SecondSurgery
答案 0 :(得分:0)
正如ErrorMsg所说,由于基于SET的处理(一次全部),所以不可能。 -您可以使用子查询强制进行顺序处理,并在外部SQL中计算SecondSurgery。