Krystal created DRILL-889: ----------------------------- Summary: = or <> filter with date against timestamp column not working as expected Key: DRILL-889 URL: https://issues.apache.org/jira/browse/DRILL-889 Project: Apache Drill Issue Type: Bug Components: Functions - Drill Reporter: Krystal
git.commit.id.abbrev=8490d74 git.commit.time=02.06.2014 @ 09\:15\:29 PDT The student test table has a create_time column as a timestamp. 0: jdbc:drill:schema=dfs> select cast(name as varchar(30)), cast(create_time as timestamp) create_time from student limit 5; +------------+-------------+ | EXPR$0 | create_time | +------------+-------------+ | fred ovid | 2014-05-27T00:26:07.000-07:00 | | bob brown | 2014-12-04T21:43:14.000-08:00 | | bob hernandez | 2014-05-31T14:33:06.000-07:00 | | ulysses xylophone | 2014-06-12T11:27:33.000-07:00 | | rachel robinson | 2014-09-01T06:45:57.000-07:00 | +------------+-------------+ Comparing the create_time field using only date portion does not return expected data. 0: jdbc:drill:schema=dfs> select cast(name as varchar(30)), cast(create_time as timestamp) create_time from student where create_time = '2014-05-31'; +------------+-------------+ | EXPR$0 | create_time | +------------+-------------+ | bob hernandez | 2014-05-31T14:33:06.000-07:00 | | priscilla king | 2014-05-31T04:51:54.000-07:00 | | yuri nixon | 2014-05-31T00:51:49.000-07:00 | +------------+-------------+ 3 rows selected (0.689 seconds) Looks like drill matches only the date portion of the column since the compare value contains only date. In oracle and postgres, the same query returned 0 rows. Looks like these 2 db default time to 0 min/sec/ms before doing comparison. -- This message was sent by Atlassian JIRA (v6.2#6252)