Q:

oracle sql date not later than today

I need to display some data if it's a
   - new data
   - updated data
let's say, I will be basing these data from a publishdate column and updated column where publishdate and updateddate are both timestamps ? . so how to compute the date if it's a new one ?

A:

For last 24 hours:
Where publish_date >= sysdate -1

or anytime today (midnight forward)
where publish_date >= trunc(sysdate)

If this is a big table, I assume you have an index on publish_date.  If you use trunc(publish_date), it may not be able to use the index (untested, but run an explain plan to be sure).

A:

Try this
Where TRUNC(sysdate) = TRUNC(publish_date)

sysdate returns today's date with the time. The TRUNC removes the time part

