繁体   English   中英

SQL 案例语句或子查询

[英]SQL Case Statement or Sub-Query

在我们在应用程序中的查询中,我们会带回打开、关闭和存档的记录,并带有与之关联的日期。 这是一个与主表关联并连接的表。 该表可能有 1 到 3 条记录与主表的相同 ID 相关联,具体取决于记录是否已打开、关闭和/或存档。 三个阶段基本上是打开、关闭和归档。

我们要做的是:当 EStatusID = 1(这意味着打开)时,我们需要 DateClosed 读取为空白(因为它尚未关闭或存档)

     SELECT
     E.EID,
     EStatus.EStatusID,
     FORMAT (EStatus.DateCreated, 'MM/dd/yyyy') as DateClosed,

我不会对查询的 rest 感到厌烦,因为它很长而且对这个问题没有用处。 所以我们需要某种Case语句或子查询或Select中的东西来完成这个任务。

您可以使用case表达式:

CASE WHEN EStatus.EStatusID <> 1 THEN FORMAT (EStatus.DateCreated, 'MM/dd/yyyy') END
    AS DateClosed,

暂无
暂无

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

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