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)

Reply via email to