是否可以将这两个查询合而为一?

流浪汉
Select convert(varchar(8), max(checkdate),1) lastcheckdate 
from table 
where status = 'processed' 
and not status in ('delivered', 'scheduled')

Select convert(varchar(8), max(checkdate),1) as nextcheckdate 
from table 
where status = 'scheduled'
and not status in ('delivered', 'processed')

我正在寻找的是具有nextcheckdate和的1个单行lastcheckdate任何帮助将是巨大的。

戈登·利诺夫(Gordon Linoff)

形式上,我认为以下内容返回了这两个值。

select convert(varchar(8), max(case when status = 'processed' then checkdate end), 1
              ) as lastcheckdate,
       convert(varchar(8), max(case when status = 'scheduled' then checkdate end), 1
              ) as nextcheckdate
from table;

但是,您的查询是荒谬的。where在每种情况下,子句都会检查状态是否具有值(例如'processed')。如果为真,则该not部分始终为真。

这使我怀疑涉及某些聚合,您正在其中查找processed具有某些ID的行,这些行没有deliveredorscheduled值。这是推测,因为问题中没有足够的信息来知道您真正在寻找什么。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章