如何在内部查询中使用variables?

我正在尝试构build一个类似这样的查询

select id, (select top 1 create_date from table2 where table1id = t1.id and status = 'success') [last_success_date], (select count(*) from table2 where table1id = t1.id and create_date > [last_success_date]) [failures_since_success] from table1 t1 

如您所见, [last_Success_Date]不在第二个查询的范围内。 我想知道如何在其他查询中访问该值,而不必重新运行它?

您可以在[from]而不是'select'中包含[last_success_date]的相应子查询。 当你这样做,你可能会join表1 ID。 这将使可用于“select”的值。