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**、**name** 和 **age**,如下所示:

[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** 語句。然後單擊執行按鈕,如下面的螢幕截圖所示。

Fetching Records

執行查詢後,如果向下滾動並選擇 **結果** 選項卡,您將看到指定表的記錄列表,如下所示。

Fetching Records Result
廣告

© . All rights reserved.