Skip to content

date_part does't work for now() #3096

Closed

Description

@waitingkuo

Describe the bug
A clear and concise description of what the bug is.

To Reproduce
Steps to reproduce the behavior:

❯ select date_part('hour', now());
Plan("Coercion from [Utf8, Timestamp(Nanosecond, Some(\"UTC\"))] to the signature OneOf([Exact([Utf8, Date32]), Exact([Utf8, Date64]), Exact([Utf8, Timestamp(Second, None)]), Exact([Utf8, Timestamp(Microsecond, None)]), Exact([Utf8, Timestamp(Millisecond, None)]), Exact([Utf8, Timestamp(Nanosecond, None)])]) failed.")

note that it could be fixed by

❯ select date_part('hour', now()::timestamp);
+-------------------------------------------------------------------+
| datepart(Utf8("hour"),CAST(now() AS Timestamp(Nanosecond, None))) |
+-------------------------------------------------------------------+
| 6                                                                 |
+-------------------------------------------------------------------+
1 row in set. Query took 0.000 seconds.

the reason for that is now() output timestamp with time zone, but our date_part doesn't work for it

Expected behavior
A clear and concise description of what you expected to happen.

Additional context
Add any other context about the problem here.

Activity

  1. waitingkuo commented on Aug 10, 2022

    @waitingkuo
    ContributorAuthor

    extract has the same behavior

    ❯ select extract(hour from now());
    Plan("Coercion from [Utf8, Timestamp(Nanosecond, Some(\"UTC\"))] to the signature OneOf([Exact([Utf8, Date32]), Exact([Utf8, Date64]), Exact([Utf8, Timestamp(Second, None)]), Exact([Utf8, Timestamp(Microsecond, None)]), Exact([Utf8, Timestamp(Millisecond, None)]), Exact([Utf8, Timestamp(Nanosecond, None)])]) failed.")
    
    ❯ select extract(hour from now()::timestamp);
    +-------------------------------------------------------------------+
    | datepart(Utf8("HOUR"),CAST(now() AS Timestamp(Nanosecond, None))) |
    +-------------------------------------------------------------------+
    | 6                                                                 |
    +-------------------------------------------------------------------+
    1 row in set. Query took 0.000 seconds.
  2. turbo1912 commented on Aug 19, 2022

    @turbo1912
    Contributor

    Hello @waitingkuo, is anyone working on this? If not I can try this one (maybe this is even fixed with some of the other recent timestamp fixes)

  3. waitingkuo commented on Aug 19, 2022

    @waitingkuo
    ContributorAuthor

    @turbo1912 i'm not working on this yet. It's not fixed yet, we could only cast Timestamp(Nanosecond, Some(\"UTC\") to Timestamp(Nanosecond, None) for now. I'd be great if you can help ❤️

  4. comphead commented on Dec 7, 2022

    @comphead
    Contributor

    @waitingkuo I'd pick this up if no objections

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions