【头歌】Hive表DDL操作(一)答案

本专栏已收集头歌大数据所有答案 以供参考

第1关:Create/Alter/Drop 数据库

答案
复制点击测评

代码块:
#********* Begin *********#
echo "
CREATE DATABASE IF NOT EXISTS test1 
 LOCATION '/hive/test1'
 WITH DBPROPERTIES('creator'='John','date'='2019-02-25');
ALTER DATABASE test1 SET DBPROPERTIES('creator'='Marry');
DROP DATABASE test1;
"
#创建数据库test1,位于HDFS的/hive/test1下,创建人creator为John,创建日期date为2019-02-25
#修改数据库test1的创建人为Marry
#删除数据库test1
 
#********* End *********#


 第2关:Create/Drop/Truncate 表

答案

复制点击测评

#********* Begin *********#
echo "
CREATE DATABASE IF NOT EXISTS test2;
 
CREATE TABLE IF NOT EXISTS test2.student(
Sno INT COMMENT 'student sno',
name STRING COMMENT 'student name',
age INT COMMENT 'student age',
sex STRING COMMENT 'student sex',
score STRUCT <Chinese:FLOAT,Math:FLOAT,English:FLOAT> COMMENT 'student score');
 
CREATE TABLE IF NOT EXISTS student_info LIKE student;
DROP TABLE  student;
"
#********* End *********#

 第3关:Alter 表/列

答案
复制点击测评

#********* Begin *********#
echo "
CREATE DATABASE IF NOT EXISTS test3;
CREATE TABLE IF NOT EXISTS test3.student(
Sno INT COMMENT 'student sno',
name STRING COMMENT 'student name',
age INT COMMENT 'student age',
sex STRING COMMENT 'student sex',
score STRUCT <Chinese:FLOAT,Math:FLOAT,English:FLOAT> COMMENT 'student score');
ALTER TABLE student RENAME TO student_info;
 
ALTER TABLE student_info CHANGE age student_age INT COMMENT 'student age';
 
ALTER TABLE student_info ADD COLUMNS (birthday STRING COMMENT 'student birthday');
"
#********* End *********#

第4关:表分区

答案
复制点击测评

#********* Begin *********#
echo "
CREATE DATABASE IF NOT EXISTS test4;
 
CREATE TABLE IF NOT EXISTS test4.student(
Sno INT COMMENT 'student sno',
name STRING COMMENT 'student name',
age INT COMMENT 'student age',
sex STRING COMMENT 'student sex',
score STRUCT <Chinese:FLOAT,Math:FLOAT,English:FLOAT> COMMENT 'student score')
PARTITIONED BY (stu_year STRING,subject STRING);
 
 
 
ALTER TABLE student ADD PARTITION (subject='Chinese',stu_year='2018')
LOCATION '/hive/test4/student/2018/Chinese'
PARTITION (subject='Math',stu_year='2018')
LOCATION '/hive/test4/student/2018/Math';
 
ALTER TABLE student PARTITION (subject='Math',stu_year='2018') 
RENAME TO PARTITION (subject='English',stu_year='2018');
 
ALTER TABLE student DROP IF EXISTS PARTITION (subject='Chinese',stu_year='2018');
"
#********* End *********#

  • 12
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值