2014-10-14 8 views
5

Nelle mie query hive ho impostato alcune variabili.Valuta espressione nelle istruzioni impostate HIVE

Comunque ho capito che alveare ricordare l'espressione piuttosto che il valore, ad esempio:

set a=1 ; 
set b=2 ; 
set c= ${hiveconf:a} + ${hiveconf:b} ; 
set c ; 
-- the command above returns 
-- c=1 + 2 

Perché Hive non valuta il valore? C'è un modo per impostare hive in modo che set c ; restituire c= 3 nel mio esempio precedente?

risposta

1

Generalmente nel punto si definiscono solo variabili in CLI. La valutazione avverrà durante la riduzione della mappa, es.

SELECT ${hiveconf:c} FROM yourTable LIMIT 1; 

fornirà il valore calcolato di c.

+0

ciao @Wawrzyniec, grazie, ma in realtà non è quello che stavo chiedendo (anche se mi rendo conto che la domanda potrebbe sembrare confusa). So che li valuta durante la riduzione della mappa, volevo sapere se c'è un modo per forzare la valutazione anche prima, in modo da poter controllare i risultati. Grazie comunque per il tuo aiuto – lucacerone

Problemi correlati