Impala - SELECT 语句

Impala SELECT 语句用于从数据库中的一个或多个表中获取数据。 该查询以表格形式返回数据。

语法

以下是 Impala select 语句的语法。

SELECT column1, column2, columnN from table_name;

这里,column1、column2...是要获取其值的表的字段。 如果你想获取字段中所有可用的字段,那么你可以使用以下语法 −

SELECT * FROM table_name;

示例

假设我们在 Impala 中有一个名为 customers 的表,其中包含以下数据 −

ID    NAME       AGE    ADDRESS      SALARY
---   -------    ---    ----------   -------
1     Ramesh     32     Ahmedabad    20000
2     Khilan     25     Delhi        15000
3     Hardik     27     Bhopal       40000
4     Chaitali   25     Mumbai       35000
5     kaushik    23     Kota         30000
6     Komal      22     Mp           32000

您可以使用select获取customers表中所有记录的id、nameage,语句如下 −

[quickstart.cloudera:21000] > select id, name, age from customers;

执行上述查询时,Impala 会从指定表中获取所有记录的 id、name、age 并显示它们,如下所示。

Query: select id,name,age from customers

+----+----------+-----+
| id | name     | age |
| 1  | Ramesh   | 32  |
| 2  | Khilan   | 25  |
| 3  | Hardik   | 27  |
| 4  | Chaitali | 25  |
| 5  | kaushik  | 23  |
| 6  | Komal    | 22  |
+----+----------+-----+

Fetched 6 row(s) in 0.66s

您还可以使用select查询从customers表中获取所有记录,如下所示。

[quickstart.cloudera:21000] > select name, age from customers; 
Query: select * from customers

执行上述查询时,Impala 会获取并显示指定表中的所有记录,如下所示。

+----+----------+-----+-----------+--------+
| id | name     | age | address   | salary |
+----+----------+-----+-----------+--------+
| 1  | Ramesh   | 32  | Ahmedabad | 20000  |
| 2  | Khilan   | 25  | Delhi     | 15000  |
| 3  | Hardik   | 27  | Bhopal    | 40000  |
| 4  | Chaitali | 25  | Mumbai    | 35000  |
| 5  | kaushik  | 23  | Kota      | 30000  |
| 6  | Komal    | 22  | MP        | 32000  |
+----+----------+-----+-----------+--------+

Fetched 6 row(s) in 0.66s

使用 Hue 获取记录

打开 Impala 查询编辑器并在其中输入 select 语句。 然后单击执行按钮,如下图所示。

获取记录

执行查询后,如果向下滚动并选择结果选项卡,您可以看到指定表的记录列表,如下所示。

获取记录结果