Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Wie verweise ich auf einen Alias ​​in einer WHERE-Klausel?

Sie können in Ihrem obigen Code nicht, merken Sie sich WHERE geschieht vor SELECT , also müssten Sie verwenden:

WHERE DateAdd(dd, -1, C.ExpirationDate) BETWEEN @StartDate AND @EndDate

Der gebräuchlichste Weg, so etwas zu aliasieren, wäre eine innere Ansicht / Abfrage wie folgt:

SELECT
  n.FooBar,  --here we can use FooBar
  t.BarFoo
FROM
  MyTable t
INNER JOIN
(
 SELECT
   myTestCase as FooBar
 From MyTable2
) n