You should not use to_date in a date, To_date is for casting varchar to date, not date.
If you use the to_date function in a date, then the oracle will refer to it as a string according to nls_date_format, which may differ in different environments.
As @jonearles said, if you want to remove time in sysdate, use TRUNC
source share