成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

SQL-Hive中常用的表格操作

運維 數據庫運維
今天我們來講講Hive中常用的表格操作指令及相關效果。Hive系列文章預計10-20篇,主要講數據分析中最基礎的SQL技能。

[[393843]]

本文轉載自微信公眾號「巡山貓說數據」,作者巡山貓。轉載本文請聯系巡山貓說數據公眾號。

今天我們來講講Hive中常用的表格操作指令及相關效果。

Hive系列文章預計10-20篇,主要講數據分析中最基礎的SQL技能。

01-最基礎的建表語句

Hive建表的全部建表語法如下:

  1. CREATE [EXTERNAL] TABLE [IF NOT EXISTS] 表名 
  2. (列名 data_type [COMMENT 列注釋], ...) 
  3. [COMMENT 表注釋] 
  4. [PARTITIONED BY (列名 data_type [COMMENT 列注釋], ...)] 
  5. [CLUSTERED BY (列名, 列名, ...)  
  6. [SORTED ,BY (列名 [ASC|DESC], ...)] INTO num_buckets BUCKETS] 
  7. [ROW FORMAT row_format] 
  8. [STORED AS file_format] 
  9. [LOCATION hdfs_path] 

所有[ ]中的內容都是可選項,即可有可無,下面我們分別詳細介紹。

CREATE [EXTERNAL] TABLE [IF NOT EXISTS] 表名

(列名 data_type)

是建表語句必須有的,舉個例子,我們要建立一個用戶啟動表:

  1. CREATE TABLE t_od_use_cnt ( 
  2.       date_8 INT 
  3.       ,platform string 
  4.       ,app_version string 
  5.       ,user_id BIGINT 
  6.       ,use_cnt INT 
  7.       ,is_active TINYINT 
  8.       ); 

首先我們建一個庫app,然后使用并在其中建表,執行效果如下:

  1. hive> create database app; 
  2. OK 
  3. Time taken: 0.899 seconds 
  4. hive> use app; 
  5. OK 
  6. Time taken: 0.03 seconds 
  7. hive> create table t_od_use_cnt( 
  8.     >       date_8 int 
  9.     >       ,platform string 
  10.     >       ,app_version string 
  11.     >       ,user_id bigint 
  12.     >       ,use_cnt int 
  13.     >       ,is_active tinyint 
  14.     >       ); 
  15. OK 
  16. Time taken: 0.389 seconds 

備注:Hive中的關鍵字大小寫是不區分的,所有關鍵字均可使用小寫。

02-查看表結構

執行語句:

  1. DESC 表名; 

查詢上一步新建表的字段及字段對應的數據類型,運行效果如下:

  1. hive> desc t_od_use_cnt; 
  2. OK 
  3. date_8                int                                    
  4. platform              string                     
  5. app_version           string                               
  6. user_id               bigint                                
  7. use_cnt               int                                
  8. is_active             tinyint                                
  9. Time taken: 0.28 seconds, Fetched: 6 row(s) 

03-刪除表

刪除表的語句和刪除庫的類似,只是把database換成了table,都是使用drop關鍵字進行刪除操作,慎重操作:

  1. DROP TABLE 表名; 

04-建分區表

Hive中有分區表的概念,分區表改變了Hive對數據存儲的組織方式。查詢時如果我們限定了分區范圍,Hive就可以直接去相應的目錄下查詢數據,而不需要掃描整個表,所以當數據量很大時可以顯著提高查詢性能。

建立分區表要使用關鍵字[PARTITIONED BY (col_name data_type[COMMENT col_comment], ...)] ,注意分區的字段不可在普通字段中重復出現。分區表在工作中十分常見,一般來說公司所有的表都會以日期進行分區,以便提高查詢效率。

我們還是以t_od_use_cnt為例,建表語句如下:

  1. CREATE TABLE t_od_use_cnt ( 
  2.       platform string comment '平臺 android,ios' 
  3.       ,app_version string comment 'app版本' 
  4.       ,user_id BIGINT comment '用戶id' 
  5.       ,use_cnt INT comment '當日使用次數' 
  6.       ,is_active TINYINT comment '是否活躍' 
  7.       ) partitioned BY (date_8 INT comment '日期'); 

05-查詢既有建表語句

在公司中需要查詢既有表的建表格式時使用以下語句即可:

  1. show create table tablename; 

查詢上文已建表格效果如下:

  1. hive> show create table t_od_use_cnt; 
  2. OK 
  3. CREATE TABLE `t_od_use_cnt`( 
  4.   `platform` string COMMENT '平臺 android,ios',  
  5.   `app_version` string COMMENT 'app版本,',  
  6.   `user_id` bigint COMMENT '用戶id',  
  7.   `use_cnt` int COMMENT '當日使用次數',  
  8.   `is_active` tinyint COMMENT '是否活躍'
  9. PARTITIONED BY (  
  10.   `date_8` int COMMENT '日期'
  11. ROW FORMAT DELIMITED  
  12.   FIELDS TERMINATED BY ','  
  13. STORED AS INPUTFORMAT  
  14.   'org.apache.hadoop.mapred.TextInputFormat'  
  15. OUTPUTFORMAT  
  16.   'org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat' 
  17. LOCATION 
  18.   'hdfs://hadoop:9000/usr/hive/warehouse/t_od_use_cnt' 
  19. TBLPROPERTIES ( 
  20.   'transient_lastDdlTime'='1556161316'

 

責任編輯:武曉燕 來源: 巡山貓說數據
相關推薦

2021-05-28 07:36:18

MySQLWhereHive

2021-04-30 08:01:36

SQLHiveSelect

2011-05-26 14:31:57

Oracle數據庫

2019-08-07 16:50:38

SQLjoingroup

2010-07-13 10:43:26

SQL Server數

2023-03-30 08:00:56

MySQL日期函數

2021-11-26 09:41:50

繪圖工具軟件工具開發

2019-10-11 08:41:18

JavaMemcached數據庫

2022-06-30 08:31:54

排序函數SQL

2023-04-11 08:49:42

排序函數SQL

2011-01-06 09:28:19

SQL語句

2010-03-22 10:27:28

Python常用模塊I

2018-05-10 16:02:48

Android程序贈工具

2010-04-01 09:46:04

Oracle日期函數

2023-03-17 16:49:42

開發Java框架

2022-08-30 21:01:17

開發Java框架

2014-11-04 10:34:27

JavaCache

2024-07-11 11:07:41

2023-01-03 15:47:09

Linux內核C語言

2010-04-06 16:50:07

Oracle數據庫
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 羞羞免费网站 | 亚洲精品视频在线看 | 久久精品国产一区二区三区不卡 | 久久国产婷婷国产香蕉 | 青青草国产在线观看 | 日朝毛片 | 亚洲一区二区视频 | 亚洲精品美女在线观看 | www97影院| 黄免费观看视频 | 精品久久久久久久久久久久 | 国产福利91精品一区二区三区 | 91传媒在线观看 | 喷水毛片 | 一区二区精品电影 | 欧洲一级毛片 | 国产综合精品一区二区三区 | 一区在线视频 | 久久国产成人精品国产成人亚洲 | 亚洲精品久久久久久一区二区 | 国产日韩欧美二区 | 秋霞性生活 | 99色视频 | 国产精品久久国产精品 | 精品久久久久久 | 麻豆精品久久久 | 欧美一级免费看 | 一级欧美一级日韩片免费观看 | 久久久久国 | 亚洲国产成人av | 日韩在线观看中文字幕 | 青草青草久热精品视频在线观看 | 欧美日韩综合 | 欧美日韩视频一区二区 | 久久88 | 成人在线免费 | 免费午夜电影 | 日韩视频在线免费观看 | 99热精品6| 91看片网 | 中文字幕亚洲无线 |