Apache Pig - GetYear ()
Questa funzione accetta un oggetto data-ora come parametro e restituisce l'anno corrente dall'oggetto data-ora specificato.
Sintassi
Ecco la sintassi di GetYear() funzione.
grunt> GetYear(datetime)
Esempio
Supponiamo che esista un file denominato date.txt nel HDFS directory /pig_data/come mostrato di seguito. Questo file contiene i dettagli della data di nascita di una determinata persona, ha l'ID persona, la data e l'ora.
date.txt
001,1989/09/26 09:00:00
002,1980/06/20 10:22:00
003,1990/12/19 03:11:44
E abbiamo caricato questo file in Pig con una relazione denominata date_data come mostrato di seguito.
grunt> date_data = LOAD 'hdfs://localhost:9000/pig_data/date.txt' USING PigStorage(',')
as (id:int,date:chararray);
Di seguito è riportato un esempio di GetYear()funzione. Recupererà l'anno corrente dall'oggetto data-ora specificato. Pertanto, prima di tutto generiamo gli oggetti data-ora di tutti i dipendenti che utilizzanotodate() funzionare come mostrato di seguito.
grunt> todate_data = foreach date_data generate ToDate(date,'yyyy/MM/dd HH:mm:ss')
as (date_time:DateTime );
grunt> Dump todate_data;
(1989-09-26T09:00:00.000+05:30)
(1980-06-20T10:22:00.000+05:30)
(1990-12-19T03:11:44.000+05:30)
Otteniamo ora l'anno dalla data di nascita di ciascun dipendente utilizzando l'estensione GetYear() funzione e memorizzarlo nella relazione denominata getyear_data.
grunt> getyear_data = foreach todate_data generate (date_time), GetYear(date_time);
Ora verifica il contenuto della relazione getyear_data utilizzando l'operatore Dump come mostrato di seguito.
grunt> Dump getyear_data;
(1989-09-26T09:00:00.000+05:30,1989)
(1980-06-20T10:22:00.000+05:30,1980)
(1990-12-19T03:11:44.000+05:30,1990)