SQL 我怎样才能 return 在同一个查询中有 2 个不同的日期

SQL How can I return 2 different dates in same query

我有一个查询,我想做的是 return 同一行中 2 列的最新日期。如果您查看 RowID 1 & 2,我想合并这两行。它们都具有相同的事件类型,但它们的不同之处在于 isProcessed 列中一个包含 1 值,另一个包含 0 值。 LastReceived 列应该 return isProcessed 为 0 的最新日期,LastProcessed 列应该 return 最后日期IsProcessed 是 1。现在我有这个工作,但它 returns 在 2 行中。第 1 行显示 LastReceived 为 0 的最后日期,第 2 行显示 Lastprocessed 为 1 的最后日期。LastReceived 和 LastProcessed 均来自 CreatedOn 列。我不知何故需要做的是 select 子句

中的类似内容
select MAX(select CreatedOn from mytable where IsProcessed=1) as LastProcessed,
MAX(select CreatedOn from mytable where IsProcessed=0) as LastReceived

下面是我的查询

with cte as (select distinct EventType,SendingOrganizationID,MAX(CreatedOn) as LastReceived,MAX(CreatedOn) as LastProcessed,case 
when SendingOrganizationID = '3yst8' then 'Example 1'
else 'Client Not Found'
END AS ClientName,IsProcessed from mytable
where  isprocessed in(0,1)
group by SendingOrganizationID,EventType,IsProcessed
having datediff(hour, MAX(CreatedOn), getdate()) >= 9)

Select ROW_NUMBER() over (ORDER BY SendingOrganizationID) as RowID,* from cte order by SendingOrganizationID,EventType,IsProcessed

任何建议都很好

您可以在以下情况下使用案例:

select EventType,SendingOrganizationID,
MAX(case when isProcessed = 0 then CreatedOn end) as LastReceived,
MAX(case when isProcessed = 1 then CreatedOn end) as LastProcessed
from mytable
group by SendingOrganizationID,EventType;