閱讀845 返回首頁    go 財經資訊


表操作__常用命令_基本介紹_大數據計算服務-阿裏雲

Create Table

命令格式:

  1. CREATE TABLE [IF NOT EXISTS] table_name
  2. [(col_name data_type [COMMENT col_comment], ...)]
  3. [COMMENT table_comment]
  4. [PARTITIONED BY (col_name data_type [COMMENT col_comment], ...)]
  5. [LIFECYCLE days]
  6. [AS select_statement]
  7. CREATE TABLE [IF NOT EXISTS] table_name
  8. LIKE existing_table_name

行為:創建一張表

注解:

  • 表名與列名均對大小寫不敏感;
  • 表名,列名中不能有特殊字符,隻能用英文的a-z, A-Z及數字和下劃線’_’,且以字母開頭,名稱的長度不超過128字節,否則報錯;
  • 注釋內容是長度不超過1024字節的有效字符串,否則報錯;
  • 對於該命令更詳細的介紹請參閱 創建表(CREATE TABLE);

示例:

  1. CREATE TABLE IF NOT EXISTS sale_detail(
  2. shop_name STRING,
  3. customer_id STRING,
  4. total_price DOUBLE)
  5. PARTITIONED BY (sale_date STRING,region STRING); --如果沒有同名表存在,創建一張分區表sale_detail

Drop Table

命令格式:

  1. DROP TABLE [IF EXISTS] table_name;

行為:

  • 刪除一張表
  • 如果不指定IF EXISTS選項而表不存在,則返回異常;若指定此選項,無論表是否存在,皆返回成功。

描述:

  • table_name:要刪除的表名;

示例:

  1. DROP TABLE sale_detail; -- 若表存在,成功返回;
  2. DROP TABLE IF EXISTS sale_detail; -- 無論是否存在sale_detail表,均成功返回;

Describe Table

命令格式:

  1. DESC <table_name>;

行為:

  • 返回指定表的信息。具體返回包括:Owner(表的屬主),Project(表所屬的項目空間),CreateTime(創建時間),LastDDLTime(最後一次DDL操作時間),LastModifiedTime(表中的數據最後一次被改動的時間),InternalTable(表示被描述的對象是表,總是顯示YES),Size(表數據所占存儲容量的大小,單位Byte),Native Columns(非分區列的信息,包括:列名,類型,備注),Partition Columns(分區列信息,包括:分區名,類型,備注)。

參數:

  • table_name:表名或視圖名稱

示例:

  1. odps@ project_name>DESC sale_detail; -- 描述一張分區表
  2. +------------------------------------------------------------------------------------+
  3. | Owner: ALIYUN$odpsuser@aliyun.com | Project: test_project |
  4. | TableComment: |
  5. +------------------------------------------------------------------------------------+
  6. | CreateTime: 2014-01-01 17:32:13 |
  7. | LastDDLTime: 2014-01-01 17:57:38 |
  8. | LastModifiedTime: 1970-01-01 08:00:00 |
  9. +------------------------------------------------------------------------------------+
  10. | InternalTable: YES | Size: 0 |
  11. +------------------------------------------------------------------------------------+
  12. | Native Columns: |
  13. +------------------------------------------------------------------------------------+
  14. | Field | Type | Comment |
  15. +------------------------------------------------------------------------------------+
  16. | shop_name | string | |
  17. | customer_id | string | |
  18. | total_price | double | |
  19. +------------------------------------------------------------------------------------+
  20. | Partition Columns: |
  21. +------------------------------------------------------------------------------------+
  22. | sale_date | string | |
  23. | region | string | |
  24. +------------------------------------------------------------------------------------+

注解:

  • 上麵給出的是在客戶端中運行此命令的示例;
  • 如果是不帶分區的表,將不會顯示Partition Columns相關信息;
  • 如果描述的是一個視圖(View),將不顯示InternalTable選項,而是VirtualView選項,其值總是為YES。與此類似地,Size選項將會被ViewText選項替代,表示View的定義,例如:select * from src。關於視圖的介紹請參考 創建視圖

查看分區信息

命令格式:

  1. desc table_name partition(pt_spec)

行為:查看某個分區表具體的分區信息。示例:

  1. odps@ project_name>desc meta.m_security_users partition (ds='20151010');
  2. +------------------------------------------------------------------------------------+
  3. | PartitionSize: 2109112 |
  4. +------------------------------------------------------------------------------------+
  5. | CreateTime: 2015-10-10 08:48:48 |
  6. | LastDDLTime: 2015-10-10 08:48:48 |
  7. | LastModifiedTime: 2015-10-11 01:33:35 |
  8. +------------------------------------------------------------------------------------+
  9. OK

Show Tables

命令格式:

  1. SHOW TABLES;

行為:列出當前項目空間下所有的表

示例:

  1. odps@ project_name>show tables;
  2. ALIYUN$odps_user@aliyun.com:table_name
  3. ......

注解:

  • 上麵給出的是在客戶端中運行此命令的示例;
  • ALIYUN是係統提示符,表示用戶是阿裏雲用戶;
  • odps_user@aliyun.com是用戶名,表示該表的創建者;
  • table_name是表名;

Show Partitions

命令格式:

  1. SHOW PARTITIONS <table_name>;

行為:列出一張表的所有分區;

參數:table_name:指定查詢的表名稱。表不存在或非分區表報錯;

示例:

  1. odps@ project_name>SHOW PARTITIONS table_name;
  2. partition_col1=col1_value1/partition_col2=col2_value1
  3. partition_col1=col1_value2/partition_col2=col2_value2

注解:

  • 上麵給出的是在客戶端中運行此命令的示例;
  • partition_col1和partition_col2表示該表的分區列;
  • col1_value1,col2_value1,col1_value2,col2_value2表示分區列對應的值;

最後更新:2016-12-12 14:09:47

  上一篇:go 項目空間操作__常用命令_基本介紹_大數據計算服務-阿裏雲
  下一篇:go 資源操作__常用命令_基本介紹_大數據計算服務-阿裏雲