過往記憶的專欄文章轉載:Hive insert into語句用法
過往記憶的專欄文章轉載:Hive insert into語句用法
原始連結:https://www.iteblog.com/archives/798.html
Hive insert into語句用法
Hadoop 2013-10-30 16:32:54 89338 2評論 下載為PDF 為什麼無法評論和登入
在Hive0.8開始支援Insert into語句,它的作用是在一個表格裡面追加資料。
標準語法語法如下:
|
注意:上面語句由於太長了,為了頁面顯示美觀,用'\'符號換行了。
舉例:
|
這樣就會將tt表格裡面的資料追加到cite表格裡面。並且在cite資料存放目錄生成了一個新的資料檔案,這個新檔案是經過處理的,列之間的分割是cite表格的列分割符,而不是tt表格列的分隔符。
(1)、如果兩個表格的維度不一樣,將會插入錯誤:
|
從上面錯誤提示看出,查詢的表格cite_standby只有一列,而目標表格(也就是需要插入資料的表格)有2列,由於列的數目不一樣,導致了上面的語句不能成功執行,我們需要保證查詢結果列的數目和需要插入資料表格的列數目一致,這樣才行。
(2)、在用extended關鍵字建立的表格上插入資料將會影響到其它的表格的資料,因為他們共享一份資料檔案。
(3)、如果查詢出來的資料型別和插入表格對應的列資料型別不一致,將會進行轉換,但是不能保證轉換一定成功,比如如果查詢出來的資料型別為int,插入表格對應的列型別為string,可以通過轉換將int型別轉換為string型別;但是如果查詢出來的資料型別為string,插入表格對應的列型別為int,轉換過程可能出現錯誤,因為字母就不可以轉換為int,轉換失敗的資料將會為NULL。
(4)、可以將一個表查詢出來的資料插入到原表中:
|
結果就是相當於複製了一份cite表格中的資料。
(5)、和insert overwrite的區別:
|
上面的語句將會用tt表格查詢到的資料覆蓋cite表格已經存在的資料。
更多關於Hive insert into的用法,可以參見Hive 官方wiki:https://cwiki.apache.org/confluence/display/Hive/LanguageManual+DML
本部落格文章除特別宣告,全部都是原創!
轉載本文請加上:轉載自過往記憶(https://www.iteblog.com/)
本文連結: 【Hive insert into語句用法】(https://www.iteblog.com/archives/798.html)
相關文章
- insert all和insert first語句的用法
- PostgreSQL的insert語句執行過程分析SQL
- SQLite Insert 語句SQLite
- SQL INSERT INTO 語句詳解:插入新記錄、多行插入和自增欄位SQL
- insert into select語句與select into from語句
- TiDB 原始碼閱讀系列文章(十六)INSERT 語句詳解TiDB原始碼
- [20181120]奇怪的insert語句.txt
- 【SQL】9 SQL INSERT INTO 語句SQL
- Python with 語句的用法Python
- SQL語句IN的用法SQL
- 教你使用SQLite-insert語句SQLite
- JavaScript with 語句用法JavaScript
- 【SQL】14 UNION 操作符、SELECT INTO 語句、INSERT INTO SELECT 語句、CREATE DATABASE 語句、CREATE TABLE 語句SQLDatabase
- SQLite語句(二):INSERT DELETE UPDATE SELECTSQLitedelete
- MySQL 的 EXPLAIN 語句及用法MySqlAI
- Oracle exp dmp包檔案轉化為insert語句,extract dmp to sqlfileOracleSQL
- sql宣告變數,及if -else語句、while語句的用法SQL變數While
- MySQL全文索引原始碼剖析之Insert語句執行過程MySql索引原始碼
- PostgreSQL 原始碼解讀(15)- Insert語句(執行過程跟蹤)SQL原始碼
- MySQL:一個簡單insert語句的大概流程MySql
- DBeaver如何生成select,update,delete,insert語句delete
- oracle-資料庫- insert 插入語句Oracle資料庫
- mysql insert的特殊用法MySql
- 【ASK_ORACLE】使用insert語句將普通錶轉換成分割槽表Oracle
- LevelDB專欄文章索引索引
- KunlunDB功能之insert/update/delete...returning語句delete
- [轉載] Java直接記憶體與堆記憶體Java記憶體
- hive on spark記憶體模型HiveSpark記憶體模型
- Hive SQL語句的正確執行順序HiveSQL
- INSERT...SELECT語句對查詢的表加鎖嗎
- Laravel 子查詢語句用法Laravel
- sqlserver採集欄位的sql語句SQLServer
- Exadata混合列壓縮功能與INSERT語句BF
- 輕量ORM-SqlRepoEx (四)INSERT、UPDATE、DELETE 語句ORMSQLdelete
- [20210407]分析sql語句的共享記憶體段3.txtSQL記憶體
- Mysql儲存過程 變數,條件,迴圈語句用法MySql儲存過程變數
- 過往業務筆記整理筆記
- 段頁式記憶體管理(轉載)記憶體