impala CREATE TABLE語句

2018-01-03 16:45 更新

CREATE TABLE語句用于在Impala中的所需數(shù)據(jù)庫中創(chuàng)建新表。 創(chuàng)建基本表涉及命名表并定義其列和每列的數(shù)據(jù)類型。

語法

以下是CREATE TABLE語句的語法。 這里,IF NOT EXISTS是一個可選的子句。 如果使用此子句,則只有在指定數(shù)據(jù)庫中沒有具有相同名稱的現(xiàn)有表時,才會創(chuàng)建具有給定名稱的表。

create table IF NOT EXISTS database_name.table_name (
   column1 data_type,
   column2 data_type,
   column3 data_type,
   ………
   columnN data_type
);

CREATE TABLE是指示數(shù)據(jù)庫系統(tǒng)創(chuàng)建新表的關(guān)鍵字。 表的唯一名稱或標(biāo)識符位于CREATE TABLE語句之后。 (可選)您可以指定database_name和table_name。

以下是create table語句的示例。 在這個例子中,我們在數(shù)據(jù)庫my_db中創(chuàng)建了一個名為student的表。

[quickstart.cloudera:21000] > CREATE TABLE IF NOT EXISTS my_db.student
   (name STRING, age INT, contact INT );

執(zhí)行上述語句時,將創(chuàng)建具有指定名稱的表,并顯示以下輸出。

Query: create table student (name STRING, age INT, phone INT) 

Fetched 0 row(s) in 0.48s

驗(yàn)證

show Tables查詢提供Impala中當(dāng)前數(shù)據(jù)庫中的表的列表。 因此,可以使用Show Tables語句驗(yàn)證是否創(chuàng)建了表。
首先,您需要將上下文切換到所需表所在的數(shù)據(jù)庫,如下所示。

[quickstart.cloudera:21000] > use my_db; 
Query: use my_db

然后,如果您使用show tables查詢獲取表的列表,則可以在其中觀察名為student的表,如下所示。

[quickstart.cloudera:21000] > show tables;

Query: show tables 
+-----------+ 
| name      | 
+-----------+ 
| student   | 
+-----------+ 
Fetched 1 row(s) in 0.10s 

HDFS路徑

為了在HDFS文件系統(tǒng)中創(chuàng)建數(shù)據(jù)庫,需要指定要創(chuàng)建數(shù)據(jù)庫的位置,如下所示。

CREATE DATABASE IF NOT EXISTS database_name LOCATION hdfs_path;

使用Hue瀏覽器創(chuàng)建數(shù)據(jù)庫

打開impala查詢編輯器,并在其中鍵入CREATE Table Statement。 然后單擊執(zhí)行按鈕,如下面的屏幕截圖所示。

創(chuàng)建數(shù)據(jù)庫

執(zhí)行查詢后,輕輕將光標(biāo)移動到下拉菜單的頂部,您會發(fā)現(xiàn)一個刷新符號。 如果單擊刷新符號,將刷新數(shù)據(jù)庫列表,并對其應(yīng)用最近所做的更改。

創(chuàng)建數(shù)據(jù)庫下拉

驗(yàn)證

單擊編輯器左側(cè)標(biāo)題DATABASE下的下拉菜單。 在那里你可以看到一個數(shù)據(jù)庫列表。 選擇數(shù)據(jù)庫my_db,如下所示。

創(chuàng)建數(shù)據(jù)庫驗(yàn)證

在選擇數(shù)據(jù)庫my_db時,您可以看到其中的表列表,如下所示。 在這里你可以找到新創(chuàng)建的表學(xué)生,如下所示。

創(chuàng)建數(shù)據(jù)庫我的數(shù)據(jù)庫
以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號