(1)加載數據:表示加載數據。
(2)local:表示將數據從本地加載到hive表中;否則,將數據從HDFS加載到hive表中。
(3)in path:表示加載數據的路徑。
(4)覆蓋:表示覆蓋表中已有的數據,否則表示追加。
(5)進入表:指示要加載哪個表。
(6)學生:表示特定的表。
(7)分區:表示上傳到指定分區。
案例:
?2)導入本地數據
?3)查看人員表數據
?2)清除人員表數據;truncate table人;
?3)檢查人員表的清空情況(沒有數據)
?4)將HDFS數據導入人員表。
?5)重新查詢人員表以檢查數據。
?2)導入HDFS而不添加本地。
?3)以“\t”結尾的行格式分隔字段;
語法:插入到& lt查詢語句》
案例:
創建新表:如果不存在則創建表person 2(id int,姓名字符串,電話字符串);
將person表中id為1和3的數據插入到person2表中。
人員2表的查詢數據
模式2:覆蓋
語法:插入覆蓋表& lt查詢語句》
測試前再準備壹張桌子。
向person6表中添加數據。
數據結果
註意:insert overwrite後面必須跟table,否則會報錯。
註意
語法:create table【如果不存在】《Table name》as & lt;查詢語句》
描述:根據查詢結果創建壹個表(查詢結果將添加到新創建的表中)。
案例:
根據人員表的結果創建人員3表。
查詢人員3
註意:使用查詢結果創建數據表時,需要添加關鍵字。
管理表
語法:create Table【if not exists】《表名》(字段信息)行格式定義的字段終止於;位置<加載數據路徑》;
案例:加載人員表數據。
查詢個人數據加載的地址。
創建person4表並設置person表的數據路徑。
查詢人員4表的信息;person4中的所有表數據都來自person表。
外部表格
創建壹個管理表t1。
向管理表t1添加壹條數據。
創建t2並指定t1數據的加載地址。
查詢t2表
刪除t1表
再次查詢t2表。
驗證t1是外部表時,刪除t1表時是否會刪除數據。
重新創建t1表。
將數據3添加到t1。
創建t2(原T2已被刪除)並將其指定為外部表,加載t1的數據路徑。
查詢t1表結構(驗證是否為外部表
查詢t2數據(數據2)
刪除t1表
查詢t2表(數據未刪除)
更深刻地理解管理表和外部表的區別。
語法:importtable從‘& lt;由export》導出的地址;
查詢person_import表
查看主目錄,我生成了壹個aaa目錄,其中包含壹個000000_0文件。
查看000000_0文件;恰好是person表中的數據。
註意:此處的覆蓋不是可選的(可以添加也可以不添加)。必須在此處添加覆蓋,否則將報告錯誤。
查看000000_0文件;選項卡用於格式化數據。
查看/aaa/000000_0文件
查看person_bak文件。
語法:hive-e““》;& lt輸出路徑》;
案例:
在主目錄中查看person_bak。
語法:將表導出到‘& lt;HDFS地址》
案例:將人員表的數據導出到HDFS/人員2。
查看/person2的層次結構
視圖/人員2/數據/人員