Hengyu Dai created HIVE-18304: --------------------------------- Summary: datediff() UDF returns a wrong result when dealing with a (date, string) input Key: HIVE-18304 URL: https://issues.apache.org/jira/browse/HIVE-18304 Project: Hive Issue Type: Bug Components: UDF Reporter: Hengyu Dai Priority: Minor
for date type argument, datediff() use DateConverter to convert input to a java Date object, for example, a '2017-12-18' will get 2017-12-18T00:00:00.000+0800 for string type argument, datediff() use TextConverter to convert a string to date, for '2012-01-01' we will get 2012-01-01T08:00:00.000+0800 now, datediff() will return a number less than the real date diff reproduce: {code:java} select datediff(cast('2017-12-18' as date), '2012-01-01'); --2177 select datediff('2017-12-18', '2012-01-01'); --2178 {code} -- This message was sent by Atlassian JIRA (v6.4.14#64029)