Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Позоваване на псевдоним другаде в списъка SELECT

Не можете да се позовавате на псевдоним извън SELECT и ORDER BY поради начина, по който се анализира една заявка. Типичното решение е да го погребете в производна таблица:

SELECT 
  FirstName, LastName, Other, 
  Flag = CASE WHEN Other IS NOT NULL THEN 1 ELSE 0 END
FROM 
(
  SELECT FirstName, LastName,
    CASE WHEN LastName = 'Jones'
     THEN 'N/A'
    END AS Other
  FROM dbo.table_name
) AS x;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да създадете таблица от резултат от заявка за избор в SQL Server 2008

  2. Заявката е изключително бавна в кода, но бърза в SSMS

  3. Извличане на номера на седмицата от дата в SQL Server (T-SQL)

  4. Как да намеря текущото ниво на транзакция?

  5. Защо моята ODBC връзка се проваля при стартиране на SSIS натоварване във Visual Studio, но не и при изпълнение на същия пакет с помощта на Execute Package Utility