Sql псевдонимы: Псевдонимы — Учебник SQL — Schoolsw3.com
Содержание
Псевдонимы — Учебник SQL — Schoolsw3.com
❮ Назад
Далее ❯
Алиасы
Псевдонимы SQL используются для присвоения таблице или столбцу в таблице временного имени.
Псевдонимы часто используются для того, чтобы сделать имена столбцов более удобочитаемыми.
Псевдоним существует только на время выполнения запроса.
Синтаксис столбца Алиас
SELECT column_name AS alias_name
FROM table_name;
Синтаксис таблиц Алиас
SELECT column_name(s)
FROM table_name AS alias_name;
Демо база данных
В этом уроке мы будем использовать хорошо известный пример базы данных Northwind.
Ниже приведен выбор из таблицы «Customers»:
CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
---|---|---|---|---|---|---|
2 | Ana Trujillo Emparedados y helados | Ana Trujillo | Avda. de la Constitución 2222 | México D.F. | 05021 | Mexico |
3 | Antonio Moreno Taquería | Antonio Moreno | Mataderos 2312 | México D.F. | 05023 | Mexico |
4 | Around the Horn | Thomas Hardy | 120 Hanover Sq. | London | WA1 1DP | UK |
И выбор из таблицы «Orders»:
OrderID | CustomerID | EmployeeID | OrderDate | ShipperID |
---|---|---|---|---|
10354 | 58 | 8 | 1996-11-14 | 3 |
10355 | 4 | 6 | 1996-11-15 | 1 |
10356 | 86 | 6 | 1996-11-18 | 2 |
Примеры Алиас для столбцов
Следующий оператор SQL создает два псевдонима, один для столбца «CustomerID» и «CustomerName» для колонки:
Пример
SELECT CustomerID AS ID, CustomerName AS Customer
FROM Customers;
Попробуйте сами »
Следующий оператор SQL создает два псевдонима, один для CustomerName колонки и для столбцов ContactName.
Примечание: Он требует двойных кавычек или квадратных скобок, если имя псевдонима содержит пробелы:
Пример
SELECT CustomerName AS Customer, ContactName AS [Contact Person]
FROM Customers;
Попробуйте сами »
Следующий оператор SQL создает псевдоним «Address», которые объединяют четыре колонны (Address, PostalCode, City и Country):
Пример
SELECT CustomerName, Address + ‘, ‘ + PostalCode + ‘ ‘ + City + ‘, ‘ + Country
AS Address
FROM Customers;
Попробуйте сами »
Примечание: Чтобы получить инструкцию SQL, чтобы работать в MySQL использовать следующие:
SELECT CustomerName, CONCAT(Address,’, ‘,PostalCode,’, ‘,City,’, ‘,Country) AS Address
FROM Customers;
Пример Алиас для таблиц
Следующая инструкция SQL выбирает все заказы от клиента с CustomerID=4 (вокруг рожка).
Мы используем таблицы «Customers» и «Orders» и даем им псевдонимы таблиц
«c» и «o» соответственно (здесь мы используем псевдонимы, чтобы сделать SQL короче):
Пример
SELECT o. OrderID, o.OrderDate, c.CustomerName
FROM Customers AS c, Orders AS o
WHERE c.CustomerName=»Around the Horn» AND c.CustomerID=o.CustomerID;
Попробуйте сами »
Следующий оператор SQL такой же, как и выше, но без псевдонимов:
Пример
SELECT Orders.OrderID, Orders.OrderDate, Customers.CustomerName
FROM Customers, Orders
WHERE Customers.CustomerName=»Around the Horn» AND Customers.CustomerID=Orders.CustomerID;
Попробуйте сами »
Алиасы могут быть полезны, когда:
- В запросе участвует несколько таблиц
- В запросе используются функции
- Имена столбцов большие или не очень читаемые
- Две или более колонн объединяются вместе
Проверьте себя с помощью упражнений
Упражнение:
При отображении таблицы Customers
,
сделайте псевдоним столбца PostalCode
,
вместо этого столбец должен называться Pno
.
SELECT CustomerName, Address, PostalCode FROM Customers;
Начните упражнение
❮ Назад
Далее ❯
SQL Псевдонимы
❮ Предыдущая Следующая Глава ❯
SQL псевдонимы используются для временного переименования таблицы или заголовок столбца.
Псевдонимы SQL
SQL псевдонимы используются для получения таблицы базы данных или столбец в таблице, временное имя.
В основном создаются псевдонимы, чтобы имена столбцов более удобным для чтения.
SQL Алиас Синтаксис для столбцов
SELECT column_name AS alias_name
FROM table_name;
SQL Синтаксис Алиас для таблиц
SELECT column_name(s)
FROM table_name AS alias_name;
Демо-версия базы данных
В этом уроке мы будем использовать хорошо известную базу данных Борей.
Ниже приводится подборка из «Customers» таблицы:
CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
---|---|---|---|---|---|---|
2 | Ana Trujillo Emparedados y helados | Ana Trujillo | Avda. de la Constitucion 2222 | Mexico D.F. | 05021 | Mexico |
3 | Antonio Moreno Taqueria | Antonio Moreno | Mataderos 2312 | Mexico D.F. | 05023 | Mexico |
4 | Around the Horn | Thomas Hardy | 120 Hanover Sq. | London | WA1 1DP | UK |
И выбор из «Orders» таблицы:
OrderID | CustomerID | EmployeeID | OrderDate | ShipperID |
---|---|---|---|---|
10354 | 58 | 8 | 1996-11-14 | 3 |
10355 | 4 | 6 | 1996-11-15 | 1 |
10356 | 86 | 6 | 1996-11-18 | 2 |
Алиас Пример для столбцов таблицы
Следующий SQL оператор задает два псевдонима, один для столбца CustomerName и один для столбца ContactName. Совет: Это требует двойные кавычки или квадратные скобки , если имя столбца содержит пробелы:
пример
SELECT CustomerName AS Customer, ContactName AS [Contact Person]
FROM Customers;
Попробуй сам «
В следующем операторе SQL мы объединим четыре столбца (Address, City, PostalCode и Country ) и создать псевдоним с именем «Address» :
пример
SELECT CustomerName, Address+’, ‘+City+’, ‘+PostalCode+’, ‘+Country AS
Address
FROM Customers;
Попробуй сам «
Примечание: Чтобы получить заявление SQL выше , чтобы работать в MySQL использовать следующее:
SELECT CustomerName, CONCAT(Address,’, ‘,City,’, ‘,PostalCode,’, ‘,Country)
AS Address
FROM Customers;
Алиас Пример для таблиц
Следующий SQL — оператор выбирает все заказы от клиента с CustomerID=4 (вокруг Horn ). Мы используем «Customers» и «Orders» таблицы, и дать им таблицы псевдонимов «c» и «o» соответственно (Здесь мы использовали псевдонимы , чтобы сделать SQL короче):
пример
SELECT o. OrderID, o.OrderDate, c.CustomerName
FROM Customers AS c, Orders
AS o
WHERE c.CustomerName=»Around the Horn» AND
c.CustomerID=o.CustomerID;
Попробуй сам «
То же самое заявление SQL без псевдонимов:
пример
SELECT Orders.OrderID, Orders.OrderDate, Customers.CustomerName
FROM
Customers, Orders
WHERE Customers.CustomerName=»Around the Horn» AND
Customers.CustomerID=Orders.CustomerID;
Попробуй сам «
Псевдонимы могут быть полезны в следующих случаях:
- Есть более чем одна таблица в запросе
- Функции используются в запросе
- Имена столбцов большие или не очень читаемый
- Два или более столбцов в сочетании друг с другом
❮ Предыдущая Следующая Глава ❯
Псевдонимы SQL
❮ Предыдущий
Далее ❯
Псевдонимы SQL
Псевдонимы SQL используются для присвоения таблице или столбцу в таблице временного имени.
Псевдонимы часто используются, чтобы сделать имена столбцов более читабельными.
Псевдоним существует только на время выполнения этого запроса.
Псевдоним создается с ключевым словом AS
.
Синтаксис столбца псевдонима
SELECT имя_столбца AS имя_псевдонима
ИЗ имя_таблицы;
Синтаксис таблицы псевдонимов
SELECT имя_столбца(ов)
FROM имя_таблицы AS имя_псевдонима;
Демонстрационная база данных
В этом руководстве мы будем использовать известную учебную базу данных Northwind.
Ниже представлена выборка из таблицы «Клиенты»:
CustomerID | ИмяКлиента | Контактное имя | Адрес | Город | Почтовый индекс | Страна |
---|---|---|---|---|---|---|
2 | Ана Трухильо Emparedados y helados | Ана Трухильо | Авда. Конститусьон 2222 | Мексика Д.Ф. | 05021 | Мексика |
3 | Антонио Морено Такерия | Антонио Морено | Матадерос 2312 | Мексика Д. Ф. | 05023 | Мексика |
4 | Вокруг Рога | Томас Харди | Ганноверская площадь, 120 | Лондон | ВА1 1ДП | Великобритания |
И выбор из таблицы «Заказы»:
OrderID | идентификатор клиента | ID сотрудника | Дата заказа | Код отправителя |
---|---|---|---|---|
10354 | 58 | 8 | 14.11.96 | 3 |
10355 | 4 | 6 | 15.11.1996 | 1 |
10356 | 86 | 6 | 1996-11-18 | 2 |
Псевдоним для столбцов Примеры
Следующая инструкция SQL создает два псевдонима, один для CustomerID
столбец и один для столбца CustomerName:
Пример
ВЫБРАТЬ ИД клиента КАК ИДЕНТИФИКАТОР, имя клиента КАК
ОТ клиентов;
Попробуйте сами »
Следующая инструкция SQL создает два псевдонима, один для CustomerName
столбец и один для столбца ContactName. Примечание: Требуется
двойные кавычки или квадратные скобки, если псевдоним содержит пробелы:
Пример
SELECT CustomerName AS Customer, ContactName AS [Контактное лицо]
FROM Customers;
Попробуйте сами »
Следующая инструкция SQL создает псевдоним с именем «Адрес», который объединяет четыре столбца (Адрес, Почтовый индекс,
Город и страна):
Пример
ВЫБЕРИТЕ имя клиента, адрес + ‘, ‘ + почтовый индекс + ‘ ‘ + город + ‘, ‘ + страна
Адрес AS
ОТ Клиентов;
Попробуйте сами »
Примечание: Чтобы приведенный выше оператор SQL работал в MySQL, используйте следующее:
SELECT CustomerName, CONCAT(Address,’, ‘,PostalCode,’, ‘,City,’, ‘ ,страна) Адрес AS
ОТ клиентов;
Примечание: Чтобы приведенный выше оператор SQL работал в Oracle, используйте следующее:
SELECT CustomerName, (Address || ‘, ‘ || PostalCode || ‘ ‘ || City || ‘, ‘ ||
Страна) Адрес AS
ОТ Клиентов;
Псевдоним для таблиц Пример
Следующая инструкция SQL выбирает все заказы от клиента с
CustomerID=4 (Вокруг Рога). Мы используем таблицы «Клиенты» и «Заказы», и
дайте им псевдонимы таблиц «c» и «o» соответственно (здесь мы используем
псевдонимы, чтобы сделать SQL короче):
Пример
ВЫБЕРИТЕ o.OrderID, o.OrderDate, c.CustomerName
FROM Customers AS c, Orders AS o
WHERE c.CustomerName=’Around the Horn’ И c.CustomerID=o.CustomerID;
Попробуйте сами »
Следующая инструкция SQL аналогична предыдущей, но без псевдонимов:
Пример
SELECT Orders.OrderID, Orders.OrderDate, Customers.CustomerName
FROM Customers, Orders
WHERE Customers.C имя_пользователя= «Вокруг Рога» И Customers.CustomerID=Orders.CustomerID;
Попробуйте сами »
Псевдонимы могут быть полезны, когда:
- В запросе участвует более одной таблицы
- Функции используются в запросе
- Имена столбцов большие или не очень читаемые
- Два или более столбца объединены вместе
Проверьте себя с помощью упражнений
Упражнение:
При отображении таблицы Customers
,
сделать ALIAS столбца PostalCode
,
столбец должен называться Pno
вместо него.
ВЫБЕРИТЕ имя клиента, Адрес, Почтовый индекс ОТ клиентов;
Начать упражнение
❮ Предыдущий
Далее ❯
Сделайте запрос короче и понятнее
Резюме : в этом руководстве вы узнаете о псевдонимах SQL, включая псевдонимы таблиц и столбцов, чтобы сделать ваши запросы короче и понятнее.
Псевдоним SQL позволяет присвоить таблице или столбцу временное имя во время выполнения запроса. SQL имеет два типа псевдонимов: псевдонимы таблиц и столбцов.
Псевдонимы столбцов SQL
При проектировании таблиц базы данных вы можете использовать сокращения для имен столбцов, чтобы они были короткими. Например:
-
so_no
означает номер заказа на продажу. -
qty
означает количество.
Или вам, возможно, придется работать с устаревшими системами, которые агрессивно используют сокращения для именования столбцов и таблиц.
Например, SAP ERP использует сокращения (на немецком языке) для обозначения всех столбцов и таблиц, например VBELN
для именования столбца номера торгового документа.
При использовании SQL для запроса данных из этих таблиц результат не очевиден. Чтобы исправить это, вы можете использовать псевдонимы столбцов, которые дают столбцам временные имена во время выполнения запроса.
Ниже показан синтаксис использования псевдонимов столбцов:
имя_столбца Имя_псевдонима AS
Язык кода: SQL (язык структурированных запросов) (sql)
В этом синтаксисе псевдоним столбца указывается после Ключевое слово AS
, за которым следует имя столбца. Ключевое слово AS
является необязательным. Таким образом, вы можете опустить его следующим образом:
имя_столбца псевдоним
Язык кода: SQL (язык структурированных запросов) (sql)
Если псевдоним содержит пробелы, вам нужно поместить его в одинарные (или двойные) кавычки ) следующим образом:
имя_столбца AS 'Псевдоним'
Язык кода: SQL (язык структурированных запросов) (sql)
В следующем примере показано, как использовать псевдонимы столбцов:
SELECT
inv_no AS invoice_no,
количество,
due_date AS 'Срок выполнения',
cust_no 'Номер клиента'
ОТ
счета-фактуры;
Язык кода: SQL (язык структурированных запросов) (sql)
Этот запрос имеет несколько псевдонимов столбцов:
-
invoice_no
— это псевдоним столбцаinv_no
. -
'Срок выполнения'
является псевдонимом столбцастолбец due_date
. Поскольку псевдоним содержит пробел, вы должны поместить его в одинарные (‘) или двойные кавычки («) . -
'Customer no'
является псевдонимом столбцаcust_no
. Обратите внимание, что у него нет ключевого словаAS
.
Псевдонимы для выражений
Если запрос содержит выражения, вы можете назначить псевдонимы столбцов для выражений. Например:
ВЫБЕРИТЕ
имя,
фамилия,
зарплата * 1.1 AS new_salary
ОТ
сотрудники;
Язык кода: SQL (язык структурированных запросов) (sql)
В этом примере база данных будет использовать псевдонимы столбцов в качестве заголовков выражений в результирующем наборе.
Распространенные ошибки псевдонимов столбцов
Поскольку вы назначаете псевдонимы столбцам в предложении SELECT
, вы можете ссылаться только на псевдонимы в предложениях, которые оцениваются после предложения SELECT
.
Следующий запрос приведет к ошибке:
ВЫБЕРИТЕ
имя,
фамилия,
зарплата * 1.1 AS new_salary
ОТ
сотрудники
ГДЕ new_salary > 5000
Язык кода: SQL (язык структурированных запросов) (sql)
Ошибка:
Неизвестный столбец «new_salary» в «предложении where»
Язык кода: JavaScript (javascript)
Почему?
В этом операторе SELECT
база данных оценивает предложения в следующем порядке:
FROM > WHERE > SELECT
Язык кода: SQL (язык структурированных запросов) (sql)
База данных оценивает предложение WHERE
перед предложением SELECT
. Следовательно, в момент оценки предложения WHERE
в базе данных нет информации о псевдониме столбца new_salary
. Так и выдало ошибку.
Однако следующий запрос работает правильно:
ВЫБЕРИТЕ
имя,
фамилия,
зарплата * 1.1 AS new_salary
ОТ
сотрудники
ЗАКАЗАТЬ ПО new_salary;
Язык кода: SQL (язык структурированных запросов) (sql)
В этом примере база данных оценивает предложения запроса в следующем порядке:
FROM > SELECT > ORDER BY
903 07 Кодовый язык : SQL (язык структурированных запросов) (sql)
База данных оценивает предложение SELECT
до ORDER BY
пункт. Следовательно, во время оценки предложения ORDER BY
в базе данных есть информация о псевдониме new_salary
, который является псевдонимом выражения зарплата * 1. 1
. Следовательно, он работает так, как ожидалось.
Псевдонимы таблиц SQL
Подобно столбцам, вы можете назначать псевдонимы таблицам. И эти псевдонимы называются псевдонимами таблиц.
Чтобы назначить псевдоним таблице, используйте следующий синтаксис:
имя_таблицы AS псевдоним_таблицы
Язык кода: PHP (php)
В этом синтаксисе ключевое слово AS
также является необязательным. Таким образом, вы можете опустить его следующим образом:
имя_таблицы алиас_таблицы
Язык кода: SQL (язык структурированных запросов) (sql)
Обратите внимание, что присвоение псевдонима таблице не переименовывает таблицу навсегда. Он просто временно дает таблице другое имя во время выполнения запроса.
Итак, зачем вам псевдонимы таблиц?
При указании имен столбцов в предложении SELECT
можно использовать следующий синтаксис:
имя_таблицы.имя_столбца
Язык кода: CSS (css)
В этом синтаксис, столбец имеет полностью полное имя, которое включает имена таблиц и столбцов. Например:
ВЫБЕРИТЕ
сотрудники.first_name,
сотрудники.last_name
ОТ
сотрудники;
Язык кода: SQL (язык структурированных запросов) (sql)
В этом примере запрос выбирает данные из столбцов first_name
и last_name
таблицы employee
. В отличие от обычного запроса, мы указываем полные имена для столбцов first_name
и last_name
.
В предложении SELECT
вместо использования имени таблицы сотрудников
можно использовать псевдоним таблицы сотрудников
. Например:
ВЫБОР
e.first_name,
e.last_name
ОТ
сотрудники АС е;
Язык кода: SQL (язык структурированных запросов) (sql)
В этом примере мы назначаем псевдоним таблицы e
для сотрудников
в предложении FROM
и ссылаемся на него в SELECT пункт
.
Но зачем вам использовать полные имена для столбцов?
См. следующие сотрудников
и отделов 9Таблицы 0015 из примера базы данных:
Обе таблицы сотрудников
и отделов
имеют столбцы с одинаковым именем:department_id.
При запросе данных из обеих таблиц необходимо указать точную таблицу, которой принадлежит столбец Department_id
. В противном случае вы получите ошибку, потому что база данных не знает, к какой таблице ей нужно перейти для выбора данных.
Если вы хотите выбрать данные из таблицы сотрудников
, вы можете сослаться на них в Предложение SELECT
следующим образом:
employee.department_id
Язык кода: SQL (язык структурированных запросов) (sql)
стол отделов
:
Departments.department_id
Язык кода: SQL (язык структурированных запросов) (sql)
Если e
и d
являются псевдонимами таблиц сотрудников
и таблицы отделов
, вы можете ссылаться на столбец Department_id
в каждой таблице, используя псевдонимы таблиц следующим образом:
e.