欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Hive數(shù)據(jù)去重的兩種方式?(distinct和group?by)

 更新時間:2023年01月03日 09:50:17   作者:zzhangyuhang  
數(shù)據(jù)庫中表存在重復(fù)數(shù)據(jù),需要清理重復(fù)數(shù)據(jù),下面這篇文章主要給大家介紹了關(guān)于Hive數(shù)據(jù)去重的兩種方式,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下

實現(xiàn)數(shù)據(jù)去重有兩種方式 :distinct 和 group by

1.distinct消除重復(fù)行

distinct支持單列、多列的去重方式。

單列去重的方式簡明易懂,即相同值只保留1個。

多列的去重則是根據(jù)指定的去重的列信息來進行,即只有所有指定的列信息都相同,才會被認為是重復(fù)的信息。

(1)作用于單列

  select distinct name from A    //對A表的name去重然后顯示

(2)作用于多列

  select distinct id,name from A   //對A表的id和name去重然后顯示

注意,distinct作用于多列的時候只在開頭加上即可,并不用每個字段都加上。

     distinct必須在開頭,在中間是不可以的,會報錯。

  select id,distinct name from A   //錯誤

(3)配合count使用

  select count(distinct name) from A  //對A表的不同的name進行計數(shù)

2.group by 分組語句

    select name from A group by name   //跟上述等價,對name分組,相當于去重。

    在使用group by的時候,前邊一般會有聚合語句,例如sum,一些沒有聚合的字段必須要加到group by 后邊。

   select a,sum(b) from A group by a   //后邊必須要有a,否則報錯  

3.區(qū)別

 其實二者沒有什么可比性,但是對于不包含聚集函數(shù)的GROUP BY操作來說,和DISTINCT操作是等價的。不過雖然二者的結(jié)果是一樣的,但是二者的執(zhí)行計劃并不相同。

 distinct只是將重復(fù)的行從結(jié)果中出去; 

 group by是按指定的列分組,一般這時在select中會用到聚合函數(shù)。

 distinct是把不同的記錄顯示出來。 

 group by是在查詢時先把紀錄按照類別分出來再查詢。

 group by 必須在查詢結(jié)果中包含一個聚集函數(shù),而distinct不用。

總結(jié)

到此這篇關(guān)于Hive數(shù)據(jù)去重的兩種方式的文章就介紹到這了,更多相關(guān)Hive數(shù)據(jù)去重內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:

相關(guān)文章

  • Hive常用日期格式轉(zhuǎn)換語法

    Hive常用日期格式轉(zhuǎn)換語法

    這篇文章主要為大家介紹了Hive常用日期格式轉(zhuǎn)換語法的操作示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-06-06
  • DBeaver下載安裝詳細教程

    DBeaver下載安裝詳細教程

    DBeaver是數(shù)據(jù)庫管理工具,如何下載安裝,下面將詳細介紹DBeaver下載安裝詳細教程,感興趣的朋友跟隨小編一起學(xué)習(xí)下吧
    2021-11-11
  • Navicat Premium 15 永久破解激活工具及安裝教程(親測可用)

    Navicat Premium 15 永久破解激活工具及安裝教程(親測可用)

    這篇文章主要介紹了Navicat Premium 15 永久破解激活教程,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-11-11
  • Win2003系統(tǒng)安裝SQL Server2000后1433端口未開放的解釋

    Win2003系統(tǒng)安裝SQL Server2000后1433端口未開放的解釋

    這篇文章主要介紹了Win2003系統(tǒng)安裝SQL Server2000后1433端口未開放的解釋
    2007-02-02
  • 詳解數(shù)據(jù)庫中跨庫數(shù)據(jù)表的運算

    詳解數(shù)據(jù)庫中跨庫數(shù)據(jù)表的運算

    跨庫數(shù)據(jù)表,是指邏輯上同一張數(shù)據(jù)表被分別存儲在不同數(shù)據(jù)庫中。接下來通過本文給大家介紹數(shù)據(jù)庫中跨庫數(shù)據(jù)表的運算方法,感興趣的朋友跟隨小編一起看看吧
    2018-11-11
  • Navicat?Premium?15?linux?安裝與激活?ArchLinux?2022最新教程(完整激活版)

    Navicat?Premium?15?linux?安裝與激活?ArchLinux?2022最新教程(完整激活

    navicat?premium?mac是一款強大數(shù)據(jù)庫管理軟件,通過navicat?premium?15?用戶快速輕松地構(gòu)建,管理和維護您的數(shù)據(jù)庫,結(jié)合了其他Navicat軟件使用更有意想不到的功能,這篇文章主要介紹了Navicat?Premium?15?linux?安裝與激活?ArchLinux?2022,需要的朋友可以參考下
    2023-01-01
  • ubuntu中使用docker下載華為opengauss數(shù)據(jù)庫超簡單步驟

    ubuntu中使用docker下載華為opengauss數(shù)據(jù)庫超簡單步驟

    openGauss是關(guān)系型數(shù)據(jù)庫,采用客戶端/服務(wù)器,單進程多線程架構(gòu),支持單機和一主多備部署方式,備機可讀,支持雙機高可用和讀擴展,這篇文章主要給大家介紹了關(guān)于ubuntu中使用docker下載華為opengauss數(shù)據(jù)庫超的簡單步驟,需要的朋友可以參考下
    2024-04-04
  • 利用SQL腳本導(dǎo)入數(shù)據(jù)到不同數(shù)據(jù)庫避免重復(fù)的3種方法

    利用SQL腳本導(dǎo)入數(shù)據(jù)到不同數(shù)據(jù)庫避免重復(fù)的3種方法

    這篇文章主要給大家介紹了關(guān)于利用SQL腳本導(dǎo)入數(shù)據(jù)到不同數(shù)據(jù)庫避免重復(fù)的3種方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-10-10
  • 數(shù)據(jù)庫加密字段進行模糊查詢詳解

    數(shù)據(jù)庫加密字段進行模糊查詢詳解

    這篇文章主要為大家介紹了數(shù)據(jù)庫加密字段進行模糊查詢詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-09-09
  • 在數(shù)據(jù)庫中如何高效的實現(xiàn)訂座功能

    在數(shù)據(jù)庫中如何高效的實現(xiàn)訂座功能

    這篇文章主要給大家介紹了關(guān)于在數(shù)據(jù)庫中如何高效的實現(xiàn)訂座功能的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2018-11-11

最新評論