Вопрос

Как мы можем создать псевдоним столбца в таблице в SQL Server?

Это было полезно?

Решение

Создание псевдонимов очень легко

SELECT tableColumnName as ColumnAlias FROM Table

Другое дело использование псевдонимов, вы должны помнить, что псевдонимы доступны после проекции (Select) Это означает, что вы не можете использовать эти псевдонимы в FROM, WHERE, GROUP BY, HAVING разделы. Допускается только в ORDER BY.

Изменить: использование псевдонимов

Таблицы:

STACK 
 - STACK_ID
 - STACK_NAME
 - STACK_ORDER
 - STACK_MIN
 - STACK_MAX

Неправильное утверждение:

    SELECT 
     STACK_NAME, 
     STACK_MIN, 
     STACK_MAX, 
     STACK_MIN + STACK_MAX as STACK_SUM 
   FROM 
    STACK WHERE STACK_SUM = 10;

Мы используем в столбце раздела, который недоступен на этом уровне.

Чтобы решить это, у нас есть два варианта

Вариант первый - мы делаем расчет в операторе, где

    SELECT 
     STACK_NAME, 
     STACK_MIN, 
     STACK_MAX, 
     STACK_MIN + STACK_MAX as STACK_SUM 
   FROM 
    STACK WHERE STACK_MIN + STACK_MAX = 10;

Вариант второй - мы создаем временную таблицу

WITH STACK_SUM_TAB AS (
 SELECT 
  STACK_NAME, 
  STACK_MIN, 
  STACK_MAX, 
  STACK_MIN + STACK_MAX as STACK_SUM 
 FROM STACK 
)

 SELECT 
  STACK_NAME, 
  STACK_MIN, 
  STACK_MAX, 
  STACK_SUM 
 FROM STACK_SUM_TAB WHERE STACK_SUM = 10;

Другие советы

select somecolumn as foo from bar where foo = 5
SELECT columnname AS [ColumnAliasName] FROM [TableName]
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top