如何将列别名化为另一个操作

问题描述 投票:0回答:2

我想在其他操作中使用Elias列开始日期进行计算

CASE WHEN GETDATE() > detail.PeriodEndDate  THEN  GETDATE() 
                 ELSE detail.PeriodEndDate
        END as StartDate,

          CASE
                 WHEN usrPlan.PackagePlanId = 1  THEN  DATEADD(month, 1,  StartDate)
                 ELSE  DATEADD(YEAR, 1,  StartDate)
        END as EndDate,
c# sql sql-server sql-server-2012
2个回答
0
投票

使用CROSS APPLYFROM子句中定义别​​名。然后在整个查询中都可用:


0
投票

我个人的喜好是使用CTE定义startdate列,然后在后续查询中使用它-这样可以避免代码重复。

© www.soinside.com 2019 - 2024. All rights reserved.