Sql 在另一个变量中使用子查询中的计算值

Sql 在另一个变量中使用子查询中的计算值,sql,subquery,Sql,Subquery,我有一个复杂的子查询,显示[Days Open]。我想将此[Days Open]用作另一个变量中的值。下面是一个简化的代码示例 如果我将整个子选择粘贴到第二个子选择=[days open]查询工作的任何位置,只需3分钟 我只希望第二个子查询引用第一个子查询的计算值 SELECT Sub.Category AS 'Category', SubSelect(not actually value just shortening code) As [Days Open], (Cas

我有一个复杂的子查询,显示[Days Open]。我想将此[Days Open]用作另一个变量中的值。下面是一个简化的代码示例

如果我将整个子选择粘贴到第二个子选择=[days open]查询工作的任何位置,只需3分钟

我只希望第二个子查询引用第一个子查询的计算值

     SELECT 
Sub.Category AS 'Category',
    SubSelect(not actually value just shortening code) As [Days Open],

(Case 
When Sub.Category Like '%Part%' Then 
    (Case 
    When Cast([Days Open] As Int)>60 Then 'Late' 
    When Cast([Days Open] As Int)<61 Then 'Not Late'
    Else 'N/A' End)
When Sub.Category Like '%Determination%' Then 
    (Case 
    When Cast([Days Open] As Int)>1 Then 'Late' 
    When Cast([Days Open] As Int)<2 Then 'Not Late'
    Else 'N/A' End)
When Sub.Category Like '%History%' Then 
    (Case 
    When Cast([Days Open] As Int)>5 Then 'Late' 
    When Cast([Days Open] As Int)<6 Then 'Not Late'
    Else 'N/A' End)
When Sub.Category Like '%Eval%' Then 
    (Case 
    When Cast([Days Open] As Int)>45 Then 'Late' 
    When Cast([Days Open] As Int)<46 Then 'Not Late'
    Else 'N/A' End)
Else 'N/A' End) As 'Days Open Late'*/

    FROM Tasks As Sub
    WHERE (Sub.Status=2) And ((Sub.DateClosed Between '04/01/2013' And '04/30/2013 11:59:59 PM')) 
    Order By Sub.Category Asc, 'Days Open' Desc
选择
子类别为“类别”,
子选择(不实际值只是缩短代码)为[Days Open],
(案例
当子类别如“%Part%”时,则
(案例
当施法时([开放日]为Int)>60,然后“迟到”
当施法时([Days Open]为Int)1,然后“迟到”
当施法时([Days Open]为Int)5然后“迟到”
当施法时([Days Open]为Int)45然后“迟到”

强制转换时([开放日]为整数)我会将SubSelect向下移动到
FROM
子句中,将其作为虚拟表进行排序。这样,您就可以在
SELECT
子句中多次引用其值。

SubSelect与主SELECT有何关联?它是从不同的表中选择还是从同一个表中选择?您能否向我们展示一个超简化版的I所以我们知道你想做什么?这可能会对潜在的答案产生巨大的影响。