Re: psql question

From: "Ian Harding" <ianh(at)tpchd(dot)org>
To: <mtooker(at)magma(dot)ca>
Cc: <pgsql-general(at)postgresql(dot)org>
Subject: Re: psql question
Date: 2002-11-15 17:16:30
Message-ID: sdd4bbe7.076@mail.tpchd.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

select empno from emp where firstname || lastname in ('JohnDoe', 'JoeBlow');

comes to mind... If one of firstname or lastname is null, the result of the concatenation will be null and will not match anything, so you might want to use a case statement to catch that case and use an empty string.

Are you stuck with that kind of construct? It seems kind of... odd.

Ian

>>> Mark Tooker <mtooker(at)magma(dot)ca> 11/08/02 04:10PM >>>
Hi,

The following 'SELECT' query fails in psql, but it works
in Oracle sqlplus ...

mydb=# create table emp
mydb-# (firstname varchar(255),lastname varchar(255),empno int);
CREATE
mydb=# insert into emp (firstname,lastname,empno) values ('John','Doe',1234);

INSERT 44968 1
mydb=# select empno from emp where ((firstname,lastname) IN
mydb-# (('John','Doe'),('Joe','Blow')));
ERROR: parser: parse error at or near "'"
ERROR: parser: parse error at or near "'"

Whereas in sqlplus:

SQL> select empno from emp where ((firstname,lastname) IN
2 (('John','Doe'),('Joe','Blow')));

EMPNO
----------
1234

Can anyone tell me what syntax _will_ work in psql?

Many thx,
Mark

---------------------------(end of broadcast)---------------------------
TIP 1: subscribe and unsubscribe commands go to majordomo(at)postgresql(dot)org

Browse pgsql-general by date

  From Date Subject
Next Message Stephan Szabo 2002-11-15 17:16:49 Re: trigger ON delete
Previous Message snpe 2002-11-15 17:05:32 DECLARE CURSOR