Introduzione all'ordine degli alveari Di

Hive è una struttura di data warehousing fornita da Apache. Hive è basato su Hadoop Distributed File System (HDFS) per scrivere, leggere, interrogare e gestire grandi dati strutturati o semi-strutturati in sistemi di archiviazione distribuiti come HDFS. Ogni HiveQL verrà convertito in un processo MapReduce nel back-end. Hive fornisce Hive Query Language (HiveQL) che è come il normale SQL in RDBMS. Come SQL, HiveQL fornisce anche la clausola ORDER BY che può essere utilizzata con la clausola SELECT. La funzione ORDER BY viene utilizzata per ordinare i dati in ordine crescente o decrescente su colonne specificate dall'utente.

Sintassi in Hive Order di

Di seguito è la sintassi nell'ordine dell'alveare per:

Sintassi di base:

SELECT, FROM ORDER BY ;

SELECT, FROM ORDER BY ;

Clausola ORDER BY insieme a tutte le altre clausole:

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

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

È inoltre possibile specificare ORDER BY 1 o ORDER BY 2 dove 1 e 2 rappresentano il numero di colonna anziché utilizzare ORDER BY. ORDER BY può essere utilizzato solo quando i nomi delle colonne sono specificati nella clausola SELECT e non con la clausola SELECT *.

Come possiamo usare la funzione ORDER BY in Hive?

La spiegazione di seguito mostra che come possiamo usare l'ordine per funzione in un alveare:

1. ORDINA PER Ascendente e Discendente

  • Per impostazione predefinita, l'ordinamento sarà crescente, che mostra il valore più piccolo all'inizio e il valore più grande alla fine del risultato, anche se non lo si specifica esplicitamente.
  • È inoltre possibile specificare ORDER BY ASC per ordine crescente e ORDER BY DESC per ordinare il risultato in ordine decrescente o la colonna specificata.
  • La sintassi HiveQL per l'ordine crescente di ODER BY può essere mostrata come di seguito:

SELECT, FROM ORDER BY ASC;

SELECT, FROM ORDER BY ASC;

  • La sintassi HiveQL per l'ordine decrescente ODER BY può essere rappresentata come di seguito:

SELECT, FROM ORDER BY DESC;

SELECT, FROM ORDER BY DESC;

  • Le clausole ascendenti e discendenti possono essere utilizzate contemporaneamente con più colonne nella clausola ORDER BY come mostrato di seguito:

SELECT, FROM ORDER BY ASC DESC;

SELECT, FROM ORDER BY ASC DESC;

2. ORDER BY e valori NULL

  • Le ultime versioni di Hive supportano anche l'ordinamento per valore NULL.
  • Per impostazione predefinita, l'ordinamento dei valori NULL per ORDER BY ASC è NULLS FIRST. Ordina tutti i valori NULL all'inizio del risultato ordinato.
  • Allo stesso modo, l'ordinamento dei valori NULL per ORDER BY DESC è NULLS LAST per impostazione predefinita. Ordina tutti i valori NULL alla fine del risultato ordinato.
  • È inoltre possibile specificare NULLS FIRST e NULLS LAST insieme a ORDER BY ASC o con ORDER BY DESC in base alle proprie esigenze e comodità.
  • Sintassi della clausola NULLS FIRST insieme a ORDER BY crescente:

SELECT, FROM ORDER BY ASC NULLS LAST;

SELECT, FROM ORDER BY ASC NULLS LAST;

  • Sintassi della clausola NULLS LAST insieme a ORDER BY decrescente:

SELECT, FROM ORDER BY DESC NULLS FIRST;

SELECT, FROM ORDER BY DESC NULLS FIRST;

3. ORDER BY e clausola LIMIT

  • La clausola LIMIT è facoltativa con la clausola ORDER BY.
  • La clausola LIMIT può essere utilizzata per migliorare le prestazioni. La clausola LIMIT può essere utilizzata per evitare l'elaborazione di dati non necessari.
  • La clausola LIMIT seleziona solo il numero limitato di valori dal risultato a scopo di verifica.
  • La clausola LIMIT con la clausola ORDER By può essere mostrata come di seguito:

SELECT, FROM ORDER BY ASC LIMIT 10;

SELECT, FROM ORDER BY ASC LIMIT 10;

  • La clausola ORDER BY può anche essere combinata con la clausola OFFSET e la clausola LIMIT per ridurre la quantità del risultato. La sintassi dello stesso può essere mostrata come:

SELECT, FROM ORDER BY ASC LIMIT 10 OFFSET 10;

SELECT, FROM ORDER BY ASC LIMIT 10 OFFSET 10;

Esempi in Hive Order di

Si consideri la seguente tabella di esempio Dipendente che contiene ID dipendente come EmpID, Nome dipendente come EmpName, Designazione, Dipartimento come dipartimento, Livello di lavoro come JL e Stipendio.

Esempio 1

Codice:

SELECT * FROM Employee ORDER BY JL ASC;

Produzione:

Esempio n. 2

Codice:

SELECT * FROM Employee ORDER BY Salary DESC LIMIT 3;

Produzione:

Esempio n. 3

Codice:

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

Produzione:

Conclusione

ORDER BY in Hive consente di ordinare i dati in ordine crescente o decrescente. ORDER BY può essere combinato con altre clausole per ottenere i dati ordinati. ORDER BY è diverso da ORDINA PER poiché ORDINA ordina i dati all'interno di un riduttore ma ORDINA PER ordina i dati interi.

Articoli consigliati

Questa è una guida per Hive Order By. Qui discutiamo Come possiamo usare l'ordine per funzione in un alveare, e diversi esempi con codici e output. Puoi anche consultare i nostri altri articoli correlati per saperne di più -

  1. Hive Funzioni integrate
  2. Che cos'è un alveare?
  3. Come installare Hive
  4. Funzione alveare
  5. Versioni del tableau
  6. Installazione alveare
  7. Esempi di funzioni integrate di Python

Categoria: