Назначение ключевого слова AS в SQL: алиасы без AS и с ним

Пройдите тест, узнайте какой профессии подходите

Я предпочитаю
0%
Работать самостоятельно и не зависеть от других
Работать в команде и рассчитывать на помощь коллег
Организовывать и контролировать процесс работы

Быстрый ответ

Ключевое слово SQL AS применяется для присваивания псевдонимов столбцам, таблицам, или различным элементам в языке SQL. Это аналогично использованию оператора присваивания = для назначения новых имен в программировании, что делает обработку SQL-выражений более понятной и удобной.

Взглянем на пример:

SQL
Скопировать код
SELECT user_id AS id, username AS user FROM accounts;

Таким образом, ключевое слово AS выполняет роль оператора присваивания =, назначая id и user в качестве новых имен для соответствующих столбцов в результате запроса.

Кинга Идем в IT: пошаговый план для смены профессии

Функциональность "AS"

Если вам знакомы другие языки программирования, вы, возможно, спросите себя: "Что такое AS и для чего он нужен?" AS является своеобразным переводчиком SQL-выражений, присваивая новые имена различным элементам кода.

  • Наглядность: AS добавляет прозрачность к сложным запросам и объединениям данных.
  • Удобство: AS позволяет присваивать более удобные и понятные имена элементам в SQL-запросах.
  • Совместимость: AS обеспечивает единое использование стандартов в различных СУБД, уменьшая проблемы несовместимости.

Визуализация

Представьте себе рынок, где у каждого продавца на бирке указано название его лавки:

Markdown
Скопировать код
Без 'AS': [Ларёк1, Ларёк2, Ларёk3]

С 'AS':
| Оригинальное название (Ларёк) |  ключевое слово AS  | Псевдоним (бирка)|
| --------------------- | ----------------- | ------------------ |
| Ларёк1                | AS                | Яблоки            |
| Ларёк2                | AS                | Бананы            |
| Ларёк3                | AS                | Апельсины         |

Таким образом, AS выполняет роль бирки, присваивая столбцам и таблицам новые, более понятные и запоминающиеся имена.

Происхождение и лучшие практики

На протяжении времени подход к использованию AS в SQL менялся. Раньше AS не всегда использовали для присваивания псевдонимов, но современные стандарты возложили на это слово функцию обеспечения ясности и согласованности кода.

Применение AS часто зависит от персональных предпочтений, но его использование особенно ценится в таких случаях:

  • Для длинных или сложных запросов
  • В операциях JOIN для ясного обозначения псевдонимов
  • Для переименования сущностей с целью обеспечения однозначности их интерпретации

Тем не менее, чёткие имена столбцов и таблиц или ясная логика соединений часто исключают необходимость в использовании AS.

Глубокое погружение в "AS"

Организация самосоединений и подзапросов

AS особенно полезен для организации самосоединений и сложных подзапросов, помогая избежать повторений и путаницы в выражениях. Вот как AS может улучшить читаемость кода:

SQL
Скопировать код
SELECT 
  em.name AS employee_name,  
  mgr.name AS manager_name   
FROM 
  employees em
JOIN employees mgr ON em.manager_id = mgr.employee_id;

Разрешение неоднозначности в записи полных имён

В случае, когда в запросе возникает путаница из-за наличия столбцов с одинаковыми именами, AS помогает SQL различить их:

SQL
Скопировать код
SELECT 
  orders.order_id,
  customers.name AS customer_name, 
  employees.name AS employee_name 
FROM 
  orders
JOIN customers ON orders.customer_id = customers.customer_id
JOIN employees ON orders.employee_id = employees.employee_id;

Обеспечение совместимости между разными СУБД

В процессе развития SQL стандарт AS стал шире приниматься благодаря его способности улучшать совместимость различных СУБД. Например, в системе Oracle изначально не поддерживали AS для присвоения псевдонимов таблицам, но дальнейшие стандарты внедрили это возможность. Таким образом, путем использования AS обеспечивается совместимость различных баз данных.

Полезные материалы

  1. SQL Aliases — Углубите свои знания о AS с помощью руководства на W3Schools.
  2. PostgreSQL Documentation: SELECT — Получите детальное знание о AS, опираясь на официальную документацию PostgreSQL.
  3. Are there ways to only replace SQL Server stored procedures when the definition has changed? — Изучите лучшие практики использования AS в SQL на сайте Database Administrators Stack Exchange.