成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

SQL-Hive中SelectFrom怎么用

這篇文章主要介紹了SQL-Hive中Select From怎么用,具有一定借鑒價(jià)值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

創(chuàng)新互聯(lián)是一家專(zhuān)注于成都網(wǎng)站設(shè)計(jì)、成都做網(wǎng)站、外貿(mào)網(wǎng)站建設(shè)與策劃設(shè)計(jì),蒼梧網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)做網(wǎng)站,專(zhuān)注于網(wǎng)站建設(shè)十多年,網(wǎng)設(shè)計(jì)領(lǐng)域的專(zhuān)業(yè)建站公司;建站業(yè)務(wù)涵蓋:蒼梧等地區(qū)。蒼梧做網(wǎng)站價(jià)格咨詢(xún):18980820575

01-查詢(xún)表中的內(nèi)容

查詢(xún)指定的某一列或某幾列,命令如下:

SELECT 列名1,列名2,…… FROM 表名;

查詢(xún)表中的所有字段時(shí),可以使用*代表所有字段。星號(hào)(*)是選取所有列的快捷方式。命令如下:

SELECT * FROM 表名;

如果我們想查詢(xún)表 t_od_use_cnt 中的所有的user_id和use_cnt,具體命令如下:

SELECT user_id       ,use_cnt FROM app.t_od_use_cnt;

備注:app是數(shù)據(jù)庫(kù)名,如果當(dāng)前查詢(xún)表與當(dāng)前使用數(shù)據(jù)庫(kù)一致,可以省略不寫(xiě)

02-Hive嚴(yán)格模式

在Hive中這樣寫(xiě)雖然語(yǔ)法正確(不加分區(qū)),但在實(shí)際工作中這樣寫(xiě)很可能會(huì)報(bào)錯(cuò)。

因?yàn)镠ive中的表一般數(shù)據(jù)量極大,為了防止用戶(hù)誤操作進(jìn)行全表掃描,可以設(shè)置為查詢(xún)分區(qū)表時(shí)必須加入分區(qū)限制。比如這里我們的分區(qū)字段是date_8這個(gè)日期字段,工作中的表會(huì)要求我們必須限定查詢(xún)哪幾天的分區(qū)數(shù)據(jù)。這里我們可以輸入設(shè)置參數(shù)進(jìn)行模擬,命令如下:

hive (app)> set hive.mapred.mode; hive.mapred.mode=nonstrict hive (app)> set hive.mapred.mode=strict; hive (app)> set hive.mapred.mode; hive.mapred.mode=strict

然后我們重新執(zhí)行上面的查詢(xún)語(yǔ)句,報(bào)錯(cuò)如下:

hive (app)> SELECT user_id           >       ,use_cnt           > FROM app.t_od_use_cnt; FAILED: SemanticException [Error 10041]: No partition predicate found for Alias "t_od_use_cnt" Table "t_od_use_cnt" hive (app)>

如下使用where語(yǔ)句限定分區(qū)即可解決這個(gè)問(wèn)題:

SELECT user_id       ,use_cnt FROM app.t_od_use_cnt WHERE date_8 = '20210420';

03-limit限制查詢(xún)返回行數(shù)

上面的查詢(xún)語(yǔ)句會(huì)返回查詢(xún)到的所有數(shù)據(jù),但有時(shí)候我們只是要確認(rèn)一下表中的數(shù)據(jù)內(nèi)容,或者要指定行數(shù)據(jù),比如只要100行,這時(shí)只需要在查詢(xún)語(yǔ)句后加上(limit  數(shù)字)即可。

查詢(xún)表t_od_use_cnt中前5行數(shù)據(jù),命令如下:

SELECT user_id       ,use_cnt FROM app.t_od_use_cnt WHERE date_8 = 20190101 Limit 5;

運(yùn)行結(jié)果如下:

hive (app)> SELECT user_id           >       ,use_cnt           > FROM app.t_od_use_cnt           > WHERE date_8 = 20210420 Limit 5; OK user_id  use_cnt 10000  6 10001  49 10002  23 10003  1 10004  29 Time taken: 0.829 seconds, Fetched: 5 row(s) hive (app)>

04-列四則運(yùn)算

在查詢(xún)時(shí)可以對(duì)數(shù)值類(lèi)型的字段進(jìn)行加減乘除和取余等四則運(yùn)算

SQL-Hive中Select From怎么用

下面我們將表t_od_use_cnt中use_cnt列和is_active列相乘得到一個(gè)新列,其他用法依次類(lèi)推。

hive (app)> SELECT user_id           >       ,use_cnt           >       ,is_active           >       ,use_cnt * is_active           > FROM app.t_od_use_cnt           > WHERE date_8 = 20210420 Limit 5; OK user_id  use_cnt  is_active  _c3 10000  6  1  6 10001  49  1  49 10002  23  1  23 10003  1  0  0 10004  29  1  29 Time taken: 0.124 seconds, Fetched: 5 row(s) hive (app)>

05-列別名

可以看到上面的例子中我們通過(guò)兩個(gè)列相乘人為制造出一個(gè)新列,系統(tǒng)默認(rèn)將其列名起為_(kāi)c3。通常有必要給這些新產(chǎn)生的列起一個(gè)別名。已有列的列名如果含義不清晰也可以通過(guò)起別名的方式進(jìn)行更改。不過(guò)別名只在本條SQL語(yǔ)句中生效,不影響原表中的字段名。

這里順便介紹一下字段命名規(guī)則:

1.不能和已有字段重復(fù)

2.只能包括小寫(xiě)字母(a-z)、數(shù)字(0-9)、下劃線(xiàn)(_)

3.以字母開(kāi)頭

4.單詞之間用下劃線(xiàn)_分割

這里我們將別名起為active_use_cnt,在列后面加 AS active_use_cnt即可。另AS可以省略,只用空格分隔別名也可以生效

hive (app)> SELECT user_id           >       ,use_cnt           >       ,is_active           >       ,use_cnt * is_active AS active_use_cnt           > FROM app.t_od_use_cnt           > WHERE date_8 = 20210420 Limit 5; OK user_id  use_cnt  is_active  active_use_cnt 10000  6  1  6 10001  49  1  49 10002  23  1  23 10003  1  0  0 10004  29  1  29 Time taken: 0.239 seconds, Fetched: 5 row(s) hive (app)>

感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“SQL-Hive中Select From怎么用”這篇文章對(duì)大家有幫助,同時(shí)也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,更多相關(guān)知識(shí)等著你來(lái)學(xué)習(xí)!

新聞標(biāo)題:SQL-Hive中SelectFrom怎么用
文章源于:http://jinyejixie.com/article36/psgosg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站建設(shè)、Google移動(dòng)網(wǎng)站建設(shè)小程序開(kāi)發(fā)、用戶(hù)體驗(yàn)網(wǎng)站排名

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

網(wǎng)站優(yōu)化排名
双城市| 陵水| 开化县| 九江县| 治多县| 永安市| 海南省| 揭西县| 岳池县| 纳雍县| 鹤庆县| 达州市| 芦溪县| 肃宁县| 荃湾区| 晋中市| 桓仁| 江口县| 灵山县| 项城市| 铅山县| 庄浪县| 易门县| 凤城市| 广南县| 正镶白旗| 华亭县| 广平县| 淮滨县| 桂平市| 泾源县| 介休市| 杭锦旗| 郑州市| 莱西市| 张家界市| 延长县| 开远市| 潢川县| 漳平市| 清流县|