Introduktion til Hive Order af

Hive er en datalagerfacilitet leveret af Apache. Hive er bygget oven på Hadoop Distribueret Filsystem (HDFS) til skrivning, læsning, forespørgsel og styring af store strukturerede eller semistrukturerede data i distribuerede lagringssystemer som HDFS. Hver HiveQL konverteres til et MapReduce-job i backend. Hive leverer Hive Query Language (HiveQL), der ligner normal SQL i RDBMS. Ligesom SQL leverer HiveQL også ORDER BY-klausulen, som kan bruges med SELECT-klausulen. ORDER BY-funktion bruges til at sortere data enten i stigende eller faldende rækkefølge på kolonner, der er specificeret af brugeren.

Syntaks i Hive rækkefølge efter

Nedenfor er syntaks i bikube rækkefølge efter:

Grundlæggende syntaks:

SELECT, FROM ORDER BY ;

SELECT, FROM ORDER BY ;

BESTIL AF klausul sammen med alle andre klausuler:

SELECT DISTINCT, , FROM WHERE GROUP BY HAVING ORDER BY LIMIT ;

SELECT DISTINCT, , FROM WHERE GROUP BY HAVING ORDER BY LIMIT ;

Du kan også angive ORDER BY 1 eller ORDER BY 2, hvor 1 og 2 repræsenterer kolonnenummeret i stedet for at bruge ORDER BY. ORDER BY kan kun bruges, når kolonnenavne er specificeret i SELECT-klausulen og ikke med SELECT * -bestemmelsen.

Hvordan kan vi bruge ORDER BY-funktion i Hive?

Nedenfor forklares det, at hvordan kan vi bruge orden efter funktion i en bikube:

1. BESTILLING AF stigende og faldende

  • Som standard vil sorteringsrækkefølgen stige, der viser den mindste værdi i begyndelsen og den største værdi i slutningen af ​​resultatet, selvom du ikke specificerer den eksplicit.
  • Du kan også specificere ORDER BY ASC for stigende rækkefølge og ORDER BY DESC til sortering af resultatet i faldende rækkefølge eller den specificerede kolonne.
  • HiveQL-syntaxen for ODER BY stigende rækkefølge kan vises som nedenfor:

SELECT, FROM ORDER BY ASC;

SELECT, FROM ORDER BY ASC;

  • HiveQL-syntaxen for ODER BY-faldende rækkefølge kan repræsenteres som nedenfor:

SELECT, FROM ORDER BY DESC;

SELECT, FROM ORDER BY DESC;

  • Stigende og faldende klausuler kan bruges samtidigt med flere kolonner i ORDER BY-klausulen som vist nedenfor:

SELECT, FROM ORDER BY ASC DESC;

SELECT, FROM ORDER BY ASC DESC;

2. ORDER BY og NULL-værdier

  • De seneste versioner af Hive understøtter også sorteringsrækkefølge for NULL-værdi.
  • Som standard er sorteringsrækkefølgen for NULL-værdier for ORDER BY ASC NULLS FIRST. Det sorterer alle NULL-værdier til begyndelsen af ​​det sorterede resultat.
  • Tilsvarende er sorteringsrækkefølgen for NULL-værdier for ORDER BY DESC som standard NULLS LAST. Det sorterer alle NULL-værdier til slutningen af ​​det sorterede resultat.
  • Du kan også specificere NULLS FIRST og NULLS LAST sammen med ORDER BY ASC eller med ORDER BY DESC i henhold til dine krav og bekvemmelighed.
  • Syntaks af NULLS FIRST-klausul sammen med ORDER BY stigende:

SELECT, FROM ORDER BY ASC NULLS LAST;

SELECT, FROM ORDER BY ASC NULLS LAST;

  • Syntaks af NULLS LAST-klausul sammen med ORDER BY faldende:

SELECT, FROM ORDER BY DESC NULLS FIRST;

SELECT, FROM ORDER BY DESC NULLS FIRST;

3. Bestilling af og begrænsningsklausul

  • LIMIT-klausul er valgfri med ORDER BY-klausulen.
  • LIMIT-klausul kan bruges til at forbedre ydelsen. LIMIT-klausul kan bruges til at undgå unødvendig databehandling.
  • LIMIT-klausul vil kun vælge det begrænsede antal værdier fra resultatet til verificeringsformålet.
  • LIMIT-klausul med ORDER By-klausul kan vises som nedenfor:

SELECT, FROM ORDER BY ASC LIMIT 10;

SELECT, FROM ORDER BY ASC LIMIT 10;

  • ORDER BY-klausul kan også kombineres med OFFSET-klausulen og LIMIT-klausulen for at reducere mængden af ​​resultatet. Syntaks af det samme kan vises som:

SELECT, FROM ORDER BY ASC LIMIT 10 OFFSET 10;

SELECT, FROM ORDER BY ASC LIMIT 10 OFFSET 10;

Eksempler i Hive Order By

Overvej følgende eksempletabel Medarbejder, der indeholder medarbejder-id som EmpID, medarbejdernavn som EmpName, Betegnelse, afdeling som afdeling, jobniveau som JL og løn.

Eksempel 1

Kode:

SELECT * FROM Employee ORDER BY JL ASC;

Produktion:

Eksempel 2

Kode:

SELECT * FROM Employee ORDER BY Salary DESC LIMIT 3;

Produktion:

Eksempel 3

Kode:

SELECT EmpId, EmpName, Designation, Dept FROM Employee where Salary < 50000 ORDER BY EmpName ASC JL ASC;

Produktion:

Konklusion

ORDER BY i Hive giver dig mulighed for at sortere data i enten stigende eller faldende rækkefølge. ORDER BY kan kombineres med andre klausuler for at få de sorterede data. ORDER BY adskiller sig fra SORTER BY, da SORTER BY sorterer dataene inden for en reducer, men ORDER BY sorterer alle dataene.

Anbefalede artikler

Dette er en guide til Hive Order By. Her diskuterer vi Hvordan kan vi bruge orden efter funktion i en bikube og forskellige eksempler med koder og output. Du kan også gennemgå vores andre relaterede artikler for at lære mere -

  1. Hive indbyggede funktioner
  2. Hvad er en bikube?
  3. Sådan installeres Hive
  4. Hive-funktion
  5. Tableau-versioner
  6. Hive installation
  7. Eksempler på Python-indbyggede funktioner

Kategori: