首頁 > 資料庫 > SQL > 主體

Hive-sql和sql的差別是什麼?

青灯夜游
發布: 2020-11-13 11:20:23
原創
20587 人瀏覽過

區別:1、Hive-sql不支援等值連接,而sql支援;2、Hive-sql不支援「Insert into 表Values()」、UPDATA、DELETE操作,而sql支援;3、 Hive-sql不支援事務,而sql支援。

Hive-sql和sql的差別是什麼?

整體來說hiveSQL與SQL基本上一致,最初的設計目的就是為了讓會SQL但是不會編程MapReduce的人也能使用Hadoop進行數據處理。

1、Hive不支援等值連接

不支援等值連接,一般使用left join、right join 或inner join取代。

例如:

SQL中內關聯可以這樣寫: select * from a , b where a.key = b.key

Hive中應該這樣寫: select * from a join b on a.key = b.key

hive中不能使用省去join的寫法。

2、分號字元

分號是sql語句的結束符號,在hive中也是,但是hive對分號的識別沒有那麼智能,有時需要進行轉義“;” --> “\073”

3、NULL

sql中null代表空值,但是在Hive中,String類型的欄位若是空(empty)字串,即長度為0,那麼對它is null 判斷結果為False

4、Hive不支援將資料插入現有的資料表或分割區中

Hive僅支援覆蓋重寫整個表。

insert overwrite 表 (重写覆盖)
登入後複製

5、Hive不支援 Insert into 表 Values(), UPDATA , DELETE 操作

##insert into 就是往表格或分割區中追加資料。

6、Hive支援嵌入mapreduce程序,來處理複雜的邏輯

暫時沒有例子可以提供。

7、Hive支援將轉換後的資料直接寫入不同的表,還能寫入分區,hdfs和本地目錄

避免多次掃描輸入表的開銷。

8、HQL不支援行層級的增、改、刪,所有資料在載入時就已經確定,不可更改。

更多程式相關知識,請造訪:

程式設計入門! !

以上是Hive-sql和sql的差別是什麼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
sql
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!