SYSDATE
to funkcja wyłącznie Oracle.
Norma ANSI definiuje current_date
lub current_timestamp
który jest obsługiwany przez PostgreSQL i udokumentowane w instrukcji:
http://www.postgresql.org/docs/current/static/functions-datetime.html#FUNCTIONS-DATETIME-CURRENT
(Btw: Oracle obsługuje CURRENT_TIMESTAMP
również)
Należy zwrócić uwagę na różnica między current_timestamp
, statement_timestamp()
i clock_timestamp()
(co wyjaśniono w instrukcji, patrz powyższy link)
To stwierdzenie:
select up_time from exam where up_time like sysdate
nie czyni dowolny sensu. Ani w Oracle, ani w Postgres. Jeśli chcesz uzyskać wiersze z „Today”, trzeba coś takiego:
select up_time
from exam
where up_time = current_date
pamiętać, że w Oracle będzie prawdopodobnie chcesz trunc(up_time) = trunc(sysdate)
pozbyć część czasu, który jest zawsze zawarty w Oracle.