mirror of
https://github.com/apache/impala.git
synced 2025-12-19 09:58:28 -05:00
The current conref returned an error and the conref text was not rendered. In impala_aliases.xml, the current <ph conref> has to be changed to <p conref>. Cherry-picks: not for 2.x Change-Id: I6768f336559eeac41f7f32f989d106740eccdc88 Reviewed-on: http://gerrit.cloudera.org:8080/9731 Reviewed-by: Alex Rodoni <arodoni@cloudera.com> Reviewed-by: Michael Brown <mikeb@cloudera.com> Tested-by: Impala Public Jenkins
111 lines
4.7 KiB
XML
111 lines
4.7 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<!--
|
|
Licensed to the Apache Software Foundation (ASF) under one
|
|
or more contributor license agreements. See the NOTICE file
|
|
distributed with this work for additional information
|
|
regarding copyright ownership. The ASF licenses this file
|
|
to you under the Apache License, Version 2.0 (the
|
|
"License"); you may not use this file except in compliance
|
|
with the License. You may obtain a copy of the License at
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
Unless required by applicable law or agreed to in writing,
|
|
software distributed under the License is distributed on an
|
|
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
KIND, either express or implied. See the License for the
|
|
specific language governing permissions and limitations
|
|
under the License.
|
|
-->
|
|
<!DOCTYPE concept PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
|
|
<concept id="aliases">
|
|
|
|
<title>Overview of Impala Aliases</title>
|
|
<titlealts audience="PDF"><navtitle>Aliases</navtitle></titlealts>
|
|
<prolog>
|
|
<metadata>
|
|
<data name="Category" value="Impala"/>
|
|
<data name="Category" value="SQL"/>
|
|
<data name="Category" value="Data Analysts"/>
|
|
<data name="Category" value="Developers"/>
|
|
<data name="Category" value="Querying"/>
|
|
<data name="Category" value="Tables"/>
|
|
<data name="Category" value="Schemas"/>
|
|
</metadata>
|
|
</prolog>
|
|
|
|
<conbody>
|
|
|
|
<p>
|
|
When you write the names of tables, columns, or column expressions in a query, you can assign an alias at the
|
|
same time. Then you can specify the alias rather than the original name when making other references to the
|
|
table or column in the same statement. You typically specify aliases that are shorter, easier to remember, or
|
|
both than the original names. The aliases are printed in the query header, making them useful for
|
|
self-documenting output.
|
|
</p>
|
|
|
|
<p>
|
|
To set up an alias, add the <codeph>AS <varname>alias</varname></codeph> clause immediately after any table,
|
|
column, or expression name in the <codeph>SELECT</codeph> list or <codeph>FROM</codeph> list of a query. The
|
|
<codeph>AS</codeph> keyword is optional; you can also specify the alias immediately after the original name.
|
|
</p>
|
|
|
|
<codeblock>-- Make the column headers of the result set easier to understand.
|
|
SELECT c1 AS name, c2 AS address, c3 AS phone FROM table_with_terse_columns;
|
|
SELECT SUM(ss_xyz_dollars_net) AS total_sales FROM table_with_cryptic_columns;
|
|
-- The alias can be a quoted string for extra readability.
|
|
SELECT c1 AS "Employee ID", c2 AS "Date of hire" FROM t1;
|
|
-- The AS keyword is optional.
|
|
SELECT c1 "Employee ID", c2 "Date of hire" FROM t1;
|
|
|
|
-- The table aliases assigned in the FROM clause can be used both earlier
|
|
-- in the query (the SELECT list) and later (the WHERE clause).
|
|
SELECT one.name, two.address, three.phone
|
|
FROM census one, building_directory two, phonebook three
|
|
WHERE one.id = two.id and two.id = three.id;
|
|
|
|
-- The aliases c1 and c2 let the query handle columns with the same names from 2 joined tables.
|
|
-- The aliases t1 and t2 let the query abbreviate references to long or cryptically named tables.
|
|
SELECT t1.column_n AS c1, t2.column_n AS c2 FROM long_name_table AS t1, very_long_name_table2 AS t2
|
|
WHERE c1 = c2;
|
|
SELECT t1.column_n c1, t2.column_n c2 FROM table1 t1, table2 t2
|
|
WHERE c1 = c2;
|
|
</codeblock>
|
|
|
|
<p rev="IMPALA-6415 IMPALA-5191">
|
|
From Impala 3.0, the alias substitution logic has changed.
|
|
</p>
|
|
<p conref="../shared/impala_common.xml#common/column_aliases"/>
|
|
|
|
<p>
|
|
To use an alias name that matches one of the Impala reserved keywords (listed in
|
|
<xref href="impala_reserved_words.xml#reserved_words"/>), surround the identifier with either single or
|
|
double quotation marks, or <codeph>``</codeph> characters (backticks).
|
|
</p>
|
|
|
|
<p>
|
|
<ph conref="../shared/impala_common.xml#common/aliases_vs_identifiers"/>
|
|
</p>
|
|
|
|
<p conref="../shared/impala_common.xml#common/complex_types_blurb"/>
|
|
|
|
<p rev="2.3.0">
|
|
Queries involving the complex types (<codeph>ARRAY</codeph>,
|
|
<codeph>STRUCT</codeph>, and <codeph>MAP</codeph>), typically make
|
|
extensive use of table aliases. These queries involve join clauses
|
|
where the complex type column is treated as a joined table.
|
|
To construct two-part or three-part qualified names for the
|
|
complex column elements in the <codeph>FROM</codeph> list,
|
|
sometimes it is syntactically required to construct a table
|
|
alias for the complex column where it is referenced in the join clause.
|
|
See <xref href="impala_complex_types.xml#complex_types"/> for details and examples.
|
|
</p>
|
|
|
|
<p>
|
|
<b>Alternatives:</b>
|
|
</p>
|
|
|
|
<p conref="../shared/impala_common.xml#common/views_vs_identifiers"/>
|
|
</conbody>
|
|
</concept>
|