Re: substring problem

From: CoL <col(at)mportal(dot)hu>
To: pgsql-bugs(at)postgresql(dot)org
Subject: Re: substring problem
Date: 2003-12-31 15:43:54
Message-ID: bsuqjp$7n9$1@news.hub.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

Hi,

Sh A Guru Prasad wrote, On 12/31/2003 11:00 AM:
> select trn_id,substr(hoa_id,1,13) from tbill_master where
> substr(hoa
> _id,1,13)='2202031040006';
> trn_id | substr
> ----------------+---------------
> 25001203000416 | 2202031040006
> 25001203000417 | 2202031040006
> 25001203000418 | 2202031040006
> 25001203000419 | 2202031040006
> 25001203000420 | 2202031040006
> 25001203000421 | 2202031040006
> 25001203000422 | 2202031040006
> 25001203000536 | 2202031040006
>
> and
> select trn_id,substr(hoa_id,0,14) from tbill_master where
> substr(hoa
> _id,0,14)='2202031040006';
> trn_id | substr
> ----------------+---------------
> 25001203000416 | 2202031040006
> 25001203000417 | 2202031040006
> 25001203000418 | 2202031040006
> 25001203000419 | 2202031040006
> 25001203000420 | 2202031040006
> 25001203000421 | 2202031040006
> 25001203000422 | 2202031040006
> 25001203000536 | 2202031040006
> both give the same result how? Is it query problem or
> postgress substring problem please clarify.

why? it's ok. The first position in string is 1, but you can use 0,
-100, or whatever. The manual says:
"substring(string [from integer] [for integer])",as you see: from
integer, for integer.
SELECT substr('1234',-1,3); = 1
SELECT substr('1234',1,1); = 1

this is the expected behaviour.

C.

In response to

Browse pgsql-bugs by date

  From Date Subject
Next Message Tom Lane 2003-12-31 16:38:04 Re: substring problem
Previous Message Sh A Guru Prasad 2003-12-31 10:00:27 substring problem