dinesh kumar <dineshkumar02(at)gmail(dot)com> writes:
> postgres=# select position('' in 'PostgreSQL'); *// position(Substring as
> an empty string) is returning 1.*
> position
> ----------
> 1
> (1 row)
This is correct according to the SQL standard:
<position expression> determines the first position, if any, at
which one string, S1, occurs within another, S2. If S1 is of length
zero, then it occurs at position 1 (one) for any value of S2. If S1
does not occur in S2, then zero is returned.
regards, tom lane