[ https://issues.apache.org/jira/browse/HIVE-11973?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14967317#comment-14967317 ]
Jimmy Xiang commented on HIVE-11973: ------------------------------------ With the patch, it means the common type of date and string is date, which seems not right. IN is handled differently from comparison. That's why the behavior is like in this jira description. > IN operator fails when the column type is DATE > ----------------------------------------------- > > Key: HIVE-11973 > URL: https://issues.apache.org/jira/browse/HIVE-11973 > Project: Hive > Issue Type: Bug > Components: Query Processor > Affects Versions: 1.0.0 > Reporter: sanjiv singh > Assignee: Yongzhi Chen > Attachments: HIVE-11973.1.patch > > > Test DLL : > {code} > CREATE TABLE `date_dim`( > `d_date_sk` int, > `d_date_id` string, > `d_date` date, > `d_current_week` string, > `d_current_month` string, > `d_current_quarter` string, > `d_current_year` string) ; > {code} > Hive query : > {code} > SELECT * > FROM date_dim > WHERE d_date IN ('2000-03-22','2001-03-22') ; > {code} > In 1.0.0 , the above query fails with: > {code} > FAILED: SemanticException [Error 10014]: Line 1:180 Wrong arguments > ''2001-03-22'': The arguments for IN should be the same type! Types are: > {date IN (string, string)} > {code} > I changed the query as given to pass the error : > {code} > SELECT * > FROM date_dim > WHERE d_date IN (CAST('2000-03-22' AS DATE) , CAST('2001-03-22' AS DATE) > ) ; > {code} > But it works without casting : > {code} > SELECT * > FROM date_dim > WHERE d_date = '2000-03-22' ; > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)