Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Jak odwołać się do aliasu w klauzuli WHERE?

Nie możesz w powyższym kodzie, pamiętaj WHERE dzieje się przed SELECT , więc musisz użyć:

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

Najpopularniejszym sposobem aliasowania czegoś takiego jest jakiś wewnętrzny widok/zapytanie, takie jak:

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


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. zapytanie sql - pobierz wszystkie rekordy na podstawie flagi

  2. SQL Server — zwracana wartość po INSERT

  3. Procedura składowana, która eksportuje dane do plików csv eksportuje tylko do jednego pliku

  4. Instrukcja insert exec nie może być zagnieżdżona

  5. Polecenie uśpienia w T-SQL?