Thread: strange behaviour of parser - numeric domain doesn't work phantom
Hello I am testing: postgres=# create domain nb int check(value > 10); CREATE DOMAIN postgres=# select 11::nb;nb ----11 (1 row) -- ok postgres=# select -11::nb;?column? ---------- -11 (1 row) -- ughh postgres=# select (-11)::nb; -- I understand ERROR: value for domain nb violates check constraint "nb_check" But nobody will write parentheses with alone negative number Regards Pavel Stehule postgres=# select version(); version -------------------------------------------------------------------------------------------------------PostgreSQL 8.3develon i686-pc-linux-gnu, compiled by GCC gcc (GCC) 4.1.2 20070502 (Red Hat 4.1.2-12) (1 row)
"Pavel Stehule" <pavel.stehule@gmail.com> writes: > postgres=# select -11::nb; The operator precedence table at http://developer.postgresql.org/pgdocs/postgres/sql-syntax-lexical.html#SQL-PRECEDENCE says perfectly clearly that :: binds more tightly than -. regards, tom lane
2007/8/13, Tom Lane <tgl@sss.pgh.pa.us>: > "Pavel Stehule" <pavel.stehule@gmail.com> writes: > > postgres=# select -11::nb; > > The operator precedence table at > http://developer.postgresql.org/pgdocs/postgres/sql-syntax-lexical.html#SQL-PRECEDENCE > says perfectly clearly that :: binds more tightly than -. > > regards, tom lane > My mistake. Sorry for noise regards Pavel Stehule