Saving all output to "!!{outputDirectory}!!/udf_second.q.raw". Enter "record" with no arguments to stop it. >>> !run !!{qFileDirectory}!!/udf_second.q >>> DESCRIBE FUNCTION second; 'tab_name' 'second(date) - Returns the second of date' 1 row selected >>> DESCRIBE FUNCTION EXTENDED second; 'tab_name' 'second(date) - Returns the second of date' 'date is a string in the format of 'yyyy-MM-dd HH:mm:ss' or 'HH:mm:ss'.' 'Example:' ' > SELECT second('2009-07-30 12:58:59') FROM src LIMIT 1;' ' 59' ' > SELECT second('12:58:59') FROM src LIMIT 1;' ' 59' 7 rows selected >>> >>> EXPLAIN SELECT second('2009-08-07 13:14:15'), second('13:14:15'), second('2009-08-07') FROM src WHERE key = 86; 'Explain' 'ABSTRACT SYNTAX TREE:' ' (TOK_QUERY (TOK_FROM (TOK_TABREF (TOK_TABNAME src))) (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (TOK_FUNCTION second '2009-08-07 13:14:15')) (TOK_SELEXPR (TOK_FUNCTION second '13:14:15')) (TOK_SELEXPR (TOK_FUNCTION second '2009-08-07'))) (TOK_WHERE (= (TOK_TABLE_OR_COL key) 86))))' '' 'STAGE DEPENDENCIES:' ' Stage-1 is a root stage' ' Stage-0 is a root stage' '' 'STAGE PLANS:' ' Stage: Stage-1' ' Map Reduce' ' Alias -> Map Operator Tree:' ' src ' ' TableScan' ' alias: src' ' Filter Operator' ' predicate:' ' expr: (key = 86.0)' ' type: boolean' ' Select Operator' ' expressions:' ' expr: second('2009-08-07 13:14:15')' ' type: int' ' expr: second('13:14:15')' ' type: int' ' expr: second('2009-08-07')' ' type: int' ' outputColumnNames: _col0, _col1, _col2' ' File Output Operator' ' compressed: false' ' GlobalTableId: 0' ' table:' ' input format: org.apache.hadoop.mapred.TextInputFormat' ' output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat' '' ' Stage: Stage-0' ' Fetch Operator' ' limit: -1' '' '' 39 rows selected >>> >>> SELECT second('2009-08-07 13:14:15'), second('13:14:15'), second('2009-08-07') FROM src WHERE key = 86; '_c0','_c1','_c2' '15','15','' 1 row selected >>> !record