Content deleted Content added
m Task 70: Update syntaxhighlight tags - remove use of deprecated <source> tags |
hyperlink |
||
(6 intermediate revisions by 5 users not shown) | |||
Line 1:
{{Short description|Feature of SQL}}
{{refimprove|date=October 2013}}
An '''alias''' is a feature of [[SQL]] that is supported by most, if not all, [[RDBMS|relational database management systems (RDBMSs)]]. Aliases provide
In SQL, you can alias tables and [[Column (database)|columns]]. A table alias is
The general syntax of an alias is <syntaxhighlight lang="sql" inline>SELECT * FROM table_name [AS] alias_name</syntaxhighlight>. Note that the AS keyword is completely optional and is usually kept for readability purposes. Here is some sample data that the queries below will be referencing:
Line 44 ⟶ 45:
<syntaxhighlight lang="sql">
SELECT DepartmentId AS Id, DepartmentName AS Name FROM Department d
</syntaxhighlight>
Some systems, such as Postgres<ref>[https://www.postgresql.org/docs/13/queries-table-expressions.html#QUERIES-FROM PostgreSQL: Documentation: 13: 7.2. Table Expressions]</ref> and Presto,<ref>https://prestodb.io/docs/0.248/sql/select.html SELECT — Presto 0.248 Documentation</ref> support specifying column aliases together with table aliases. E.g.
<syntaxhighlight lang="sql">
SELECT D.Id FROM Department AS D(Id)
</syntaxhighlight>
would produce the same result set as before. In this syntax it is permissible to omit aliases for some column names. In the example, an alias was provided for DepartmentId, but omitted for DepartmentName. Columns with unspecified aliases will be left unaliased. This syntax is often used with expressions that do not produce useful table and column names, such as VALUES<ref>https://prestodb.io/docs/0.248/sql/values.html#examples VALUES — Presto 0.248 Documentation</ref> and UNNEST.<ref>https://prestodb.io/docs/0.248/sql/select.html#unnest SELECT — Presto 0.248 Documentation</ref> As an example, one may conveniently test the above SQL statements without creating an actual Departments table by using expressions such as
<syntaxhighlight lang="sql">
WITH Department(DepartmentId, DepartmentName) AS (VALUES (1, 'HR'), (2, 'IT'))
SELECT DepartmentId AS Id, DepartmentName AS Name FROM Department d;
</syntaxhighlight>
Line 52 ⟶ 66:
[[Category:SQL]]
[[Category:Articles with example SQL code]]
|