On 21 December 2017 at 14:43, Rajkumar Raghuwanshi <
rajkumar.raghuwan...@enterprisedb.com> wrote:

> Hi,
>
> with below query I am getting unexpected output. here !<space>= is
> behaving as =
> is this expected behaviour?
>
> postgres=# create table tbl (col_a int, col_b int);
> CREATE TABLE
> postgres=# insert into tbl values (1,2);
> INSERT 0 1
> postgres=# insert into tbl values (2,1);
> INSERT 0 1
>
>
>
>
> *postgres=# select * from tbl where col_a ! = 1; col_a |
> col_b-------+-------     1 |     2(1 row)*
>
>
One-factorial is one, so it's correct.

test=> SELECT 1!, 2!, 3!;
 ?column? | ?column? | ?column?
----------+----------+----------
        1 |        2 |        6
(1 row)

test=> SELECT (1 !) = 1;
 ?column?
----------
 t
(1 row)

test=> \do+ !
                                      List of operators
   Schema   | Name | Left arg type | Right arg type | Result type |
 Function   | Description
------------+------+---------------+----------------+-------------+-------------+-------------
 pg_catalog | !    | bigint        |                | numeric     |
numeric_fac | factorial
(1 row)




-- 
 Craig Ringer                   http://www.2ndQuadrant.com/
 PostgreSQL Development, 24x7 Support, Training & Services

Reply via email to