I am not talking about SET, I am talking about \set command. Yes, I understand, plpgsql can work around it, but I think postgresql should have a simple way to do it. E.g. Db>\set AAA 'whatever' Db>\set You will see AAA associate with 'whatever', it's an internal variable, but how could I use it in my SQL query?
Thanks anyway. Jie Liang -----Original Message----- From: Christian Kratzer [mailto:[EMAIL PROTECTED] Sent: Wednesday, May 12, 2004 3:13 AM To: Jie Liang Cc: [EMAIL PROTECTED]; [EMAIL PROTECTED] Subject: Re: [SQL] \set Hi, On Tue, 11 May 2004, Jie Liang wrote: > Hi, > How to use an internal variable? > Original question was how to set a variable in postgresql? > If I want to set a variable like start_date='2004-05-10'; > How could I use it in my SQL statement? > E.g. > > Db> set start_date '2004-05-10' > Db> select start_date as 'start date'; > > It's not executable! from doc/postgresql/html/sql-set.html --snipp-- Synopsis SET [ SESSION | LOCAL ] name { TO | = } { value | 'value' | DEFAULT } SET [ SESSION | LOCAL ] TIME ZONE { timezone | LOCAL | DEFAULT } ... ... ... name Name of a settable run-time parameter. Available parameters are documented in Section 16.4 and below. --snipp-- that is you can only use SET to change specific predefined parameters. It does not say you could use SET to store other data local to the database session. As far as I know there are no session local variables in postgresql. I could use something like this myself. The only workaround I know of to have data local to a session is to create a temporary table for the data. There are local variables in plpgsql if you are just looking for local variables. Greetings Christian -- Christian Kratzer [EMAIL PROTECTED] CK Software GmbH http://www.cksoft.de/ Phone: +49 7452 889 135 Fax: +49 7452 889 136 ---------------------------(end of broadcast)--------------------------- TIP 1: subscribe and unsubscribe commands go to [EMAIL PROTECTED]