Louis what if you create one "wrapper" function immutable? some thing like this. CREATE OR REPLACE FUNCTION myextract(timestamp ) RETURNS date AS $BODY$ BEGIN return extract(date from $1) ; END; $BODY$ LANGUAGE 'plpgsql' IMMUTABLE best regards mdc --- Louis-David Mitterrand <vindex+lists-pgsql-general@xxxxxxxxxxx> escribió: > Hi, > > To constraint unique'ness of my visitors to a 24h > periode I tried > created a index including the 'date' part of the > created_on timestamp: > > CREATE UNIQUE INDEX visit_idx ON visit_buffer USING > btree (id_session, > id_story, created_on::date); > > psql:visit_pkey.sql:5: ERROR: syntax error at or > near "::" > LINE 1: ...buffer USING btree (id_session, > id_story, created_on::date); > > and this: > > CREATE UNIQUE INDEX visit_idx ON visit_buffer USING > btree (id_session, id_story, extract(date from > created_on)); > psql:visit_pkey.sql:4: ERROR: functions in index > expression must be marked IMMUTABLE > > How can I achieve what I am trying? > > Thanks, > > ---------------------------(end of > broadcast)--------------------------- > TIP 6: explain analyze is your friend > Yahoo! Encuentros. Ahora encontrar pareja es mucho más fácil, probá el nuevo Yahoo! Encuentros http://yahoo.cupidovirtual.com/servlet/NewRegistration ---------------------------(end of broadcast)--------------------------- TIP 3: Have you checked our extensive FAQ? http://www.postgresql.org/docs/faq