public class WeeksBetween extends EvalFunc<java.lang.Long>
WeeksBetween returns the number of weeks between two DateTime objects
Example usage: ISOin = LOAD 'test.tsv' USING PigStorage('\t') AS (datetime, dt2:datetime); DESCRIBE ISOin; ISOin: {dt: datetime,dt2: datetime} DUMP ISOin; (2009-01-07T01:07:01.000Z,2008-02-01T00:00:00.000Z) (2008-02-06T02:06:02.000Z,2008-02-01T00:00:00.000Z) (2007-03-05T03:05:03.000Z,2008-02-01T00:00:00.000Z) ... diffs = FOREACH ISOin GENERATE YearsBetween(dt, dt2) AS years, MonthsBetween(dt, dt2) AS months, WeeksBetween(dt, dt2) AS weeks, DaysBetween(dt, dt2) AS days, HoursBetween(dt, dt2) AS hours, MinutesBetween(dt, dt2) AS mins, SecondsBetween(dt, dt2) AS secs; MilliSecondsBetween(dt, dt2) AS millis; DESCRIBE diffs; diffs: {years: long,months: long,weeks: long,days: long,hours: long,mins: long,secs: long,millis: long} DUMP diffs; (0L,11L,48L,341L,8185L,491107L,29466421L,29466421000L) (0L,0L,0L,5L,122L,7326L,439562L,439562000L) (0L,-10L,-47L,-332L,-7988L,-479334L,-28760097L,-28760097000L)
EvalFunc.SchemaType
log, pigLogger, reporter, returnType
Constructor and Description |
---|
WeeksBetween() |
Modifier and Type | Method and Description |
---|---|
boolean |
allowCompileTimeCalculation()
Whether the UDF should be evaluated at compile time if all inputs are constant.
|
java.lang.Long |
exec(Tuple input)
This callback method must be implemented by all subclasses.
|
java.util.List<FuncSpec> |
getArgToFuncMapping()
Allow a UDF to specify type specific implementations of itself.
|
Schema |
outputSchema(Schema input)
Report the schema of the output of this UDF.
|
finish, getCacheFiles, getInputSchema, getLogger, getPigLogger, getReporter, getReturnType, getSchemaName, getSchemaType, getShipFiles, isAsynchronous, progress, setInputSchema, setPigLogger, setReporter, setUDFContextSignature, warn
public java.lang.Long exec(Tuple input) throws java.io.IOException
EvalFunc
public Schema outputSchema(Schema input)
EvalFunc
The default implementation interprets the OutputSchema
annotation,
if one is present. Otherwise, it returns null
(no known output schema).
outputSchema
in class EvalFunc<java.lang.Long>
input
- Schema of the inputpublic java.util.List<FuncSpec> getArgToFuncMapping() throws FrontendException
EvalFunc
getArgToFuncMapping
in class EvalFunc<java.lang.Long>
FrontendException
public boolean allowCompileTimeCalculation()
EvalFunc
allowCompileTimeCalculation
in class EvalFunc<java.lang.Long>
Copyright © 2007-2012 The Apache Software Foundation