共計 951 個字符,預計需要花費 3 分鐘才能閱讀完成。
自動寫代碼機器人,免費開通
這篇文章給大家分享的是有關 Hive-sql 和 sql 有什么區別的內容。丸趣 TV 小編覺得挺實用的,因此分享給大家做個參考。一起跟隨丸趣 TV 小編過來看看吧。
區別:1、Hive-sql 不支持等值連接,而 sql 支持;2、Hive-sql 不支持“Insert into 表 Values()”、UPDATA、DELETE 操作,而 sql 支持;3、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 有什么區別就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
向 AI 問一下細節
丸趣 TV 網 – 提供最優質的資源集合!