@Nicolai heeft gelijk over casten en waarom de voorwaarde onjuist is voor alle gegevens. ik denk dat je de eerste vorm verkiest omdat je datummanipulatie op de invoerreeks wilt voorkomen, toch? je hoeft niet bang te zijn:
SELECT *
FROM table
WHERE update_date >= '2013-05-03'::date
AND update_date < ('2013-05-03'::date + '1 day'::interval);