On Tue, Jul 11, 2006 at 13:11:16 -0400, Paul Tilles <[EMAIL PROTECTED]> wrote: > Version postgres 7.4.7: > > Following sql > > UPDATE tablename SET value = 0.0 where value!=-9.4; > > results in the error message > > ERROR: operator does not exist: smallint !=- integer > HINT: No operator matches the given name and argument type(s). You may > need to add explicit type casts. > > Seems that postgres has a problem parsing a "not equal negative value". > > Anybody know if this is fixed in later versions?
I don't think this is a bug. Postgres allows for user defined operators and !=- looks like one operator rather than two. Putting a space between = and - will fix the problem. For example: bruno=> select 1 != -1; ?column? ---------- t (1 row) bruno=> select 1 !=-1; ERROR: operator does not exist: integer !=- integer HINT: No operator matches the given name and argument type(s). You may need to add explicit type casts. ---------------------------(end of broadcast)--------------------------- TIP 1: if posting/reading through Usenet, please send an appropriate subscribe-nomail command to [EMAIL PROTECTED] so that your message can get through to the mailing list cleanly