亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
等值連接,不等值連接那里講的好亂,不夠清晰,不理解left join 和right join的人聽會聽暈的
感謝老師分享,期待更優質資源!
等值連接(連接條件是等號):

```
select e.empno, e.ename, e.sal, d.dname
from emp e,dept d
where e.deptno=d.deptno;
```

不等值連接(連接條件不是等號):

```
select e.empno, e.ename, e.sal, d.dname
from emp e,dept d
where e.deptno between 1 and 10;
```
to_date('2018-6-17'):取出一個字符串中的年月日部分
year('2018-6-17'):取出一個字符串中的年
month('2018-6-17'):取出一個字符串中的月
day('2018-6-17'):取出一個字符串中的日
weekofyear('2018-6-17'):本周是一年中的第幾周
datediff('2018-6-17', '2019-6-17'):兩個日期相差的天數
date_add('2018-6-17', 2):在一個日期上加上多少天
date_sub('2018-6-17', 2):在一個日期上減去多少天
數學函數:
round(number, n):對number進行四舍五入操作,并保留n位小數
ceil(number):向上取整
floor(number):向下取整

字符函數:
lower(str):把字符串轉為小寫
upper(str):把字符串轉為大寫
length(str):字符串的長度
concat(str1, str2):字符串拼接
substr(str, start[, length]):截取子串
trim(str):去掉字符串收尾的空格
lpad(str, length, mark):左填充
rpad(str, length, mark):右填充
在 Hive 中,大部分 HQL 查詢語句都會被轉換為 MapReduce 作業進行執行,但也有小部分查詢不會被轉換,如select * from tb_name;,因為 Hive 里的數據是直接存儲在 HDFS 中的,當查詢所有的信息,只需要把 HDFS 中該表的所有信息讀取出來即可,沒有必要轉換成 MR 作業。MR 作業需要編譯和任務下發等一系列操作,所以速度會慢一些。
# Hive 數據查詢

查詢語法:

SELECT [ALL|DISTINCT] select_expr, select_expr ...
FROM tb_reference
[WHERE where_condition]
[GROUP BY col_list]
[CLUSTER BY col_list
|[DISTRIBUTE BY col_list] [SORT BY col_list]
|[ORDER BY col_list]]
[LIMIT number]

- DISTRIBUTE BY:指定分發器(partitioner),多reduce可用
參數說明:
--connect:指定JDBC數據庫連接地址,jdbc:mysql://127.0.0.1:3306/test
--user、--password:指定JDBC數據庫連接用戶名和密碼
--table:指定RDBMS中的表名
-columns:指定導入RDBMS中表的哪些列
-m:指定導入時MR的進程數
--target-dir:指定數據導入到 HDFS 時的目錄
--hive-import:數據到 Hive 中
--hive-table:指定數據導入到 Hive 時的表名
--where:使用 where 條件,來過濾一些數據
--query:使用査詢語句
注意:最新的穩定版本是1.4.7,Sqoop 依賴于 JDK 和 Hadoop 環境。

在官網下載最新的穩定版本:
wget http://mirrors.shu.edu.cn/apache/sqoop/1.4.7/sqoop-1.4.7.bin__hadoop-2.6.0.tar.gz

解壓:tar -zxvf sqoop-1.4.7.bin__hadoop-2.6.0.tar.gz

配置環境變量:
export SQOOP_HOME=/bigdata/sqoop-1.4.7.bin__hadoop-2.6.0
export PATH=$SQOOP_HOME/bin:$PATH
hive2.0之后的版本,打開hive服務器接口的代碼是:hive --service hiveserver2。這是個坑。

最新回答 / Max_Cooper
我試了一下,你的這個沒問題,你是不是輸參數的時候帶上了單引號,導致參數的類型成了Text而不是IntWritable。
竟然沒人留言,哈哈哈,坐個沙發

最新回答 / weixin_慕慕3242689
以前是通過hivecli連接HiveServer?,?缺點是HiveServer 不能處理多個客戶端,比如你的HiveServer裝在A機器,就必須到A機器上連接訪問。所以就出現了HiveServer2,可以在任意機器上使用beeline通過JDBC方式連接。并且beeline不是直接連接的HiveServer2,二十訪問的zookeeper,zookeeper中記錄著多個HiveServer2地址,就算其中一個HiveServer2掛掉,也不妨礙訪問。
https://www.jianshu.com/p/f239356370a2
這是根據老師講解內容整理的課堂筆記,歡迎大家查看
課程須知
本課程是Hadoop體系結構的擴展內容 1、熟練掌握Hadoop的體系結構,尤其是HDFS 2、熟悉Java編程 3、了解Linux的基本操作 對Hive還不了解的童鞋,最好先去《Hive旅程之初識印象》修煉一下,再回來學習
老師告訴你能學到什么?
1、Hive數據的導入 2、Hive的數據查詢 3、Hive的內置函數 4、Hive的表連接 5、Hive的子查詢 6、Hive的客戶端操作 7、開發Hive的自定義函數

微信掃碼,參與3人拼團

微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

友情提示:

您好,此課程屬于遷移課程,您已購買該課程,無需重復購買,感謝您對慕課網的支持!

本次提問將花費2個積分

你的積分不足,無法發表

為什么扣積分?

本次提問將花費2個積分

繼續發表請點擊 "確定"

為什么扣積分?

舉報

0/150
提交
取消