Обсуждение: Didn't correct output for LTRIM function

Поиск
Список
Период
Сортировка

Didn't correct output for LTRIM function

От
PG Doc comments form
Дата:
The following documentation comment has been logged on the website:

Page: https://www.postgresql.org/docs/14/bug-reporting.html
Description:

First check the output of "select LTRIM('  startech academy ', '  sta');"
  output is "rtech academy "
now the thing is output of "select LTRIM('  startech academy ', '  star');"
   output is "ech academy "
the question is where is 't'?

The problem is when we do LTRIM for trimming the first four characters, it
trims the first five characters. but in the case of doing three characters,
it gives the correct output.

Re: Didn't correct output for LTRIM function

От
Guillaume Lelarge
Дата:
Le lun. 13 juin 2022 à 10:06, PG Doc comments form <noreply@postgresql.org> a écrit :
The following documentation comment has been logged on the website:

Page: https://www.postgresql.org/docs/14/bug-reporting.html
Description:

First check the output of "select LTRIM('  startech academy ', '  sta');"   
  output is "rtech academy "
now the thing is output of "select LTRIM('  startech academy ', '  star');"
   output is "ech academy "
the question is where is 't'?


It's trimmed, because you asked t to be removed. It trims every single character at the beginning of the string till it encounters another character. The doc example makes it more clear:

ltrim('zzzytest', 'xyz') → test


The problem is when we do LTRIM for trimming the first four characters, it
trims the first five characters. but in the case of doing three characters,
it gives the correct output.

Both outputs are correct actually.


--
Guillaume.

Re: Didn't correct output for LTRIM function

От
nikunj vadsak
Дата:
Thank you for the clarification. 

On Mon, 13 Jun 2022, 4:27 am Guillaume Lelarge, <guillaume@lelarge.info> wrote:
Le lun. 13 juin 2022 à 10:06, PG Doc comments form <noreply@postgresql.org> a écrit :
The following documentation comment has been logged on the website:

Page: https://www.postgresql.org/docs/14/bug-reporting.html
Description:

First check the output of "select LTRIM('  startech academy ', '  sta');"   
  output is "rtech academy "
now the thing is output of "select LTRIM('  startech academy ', '  star');"
   output is "ech academy "
the question is where is 't'?


It's trimmed, because you asked t to be removed. It trims every single character at the beginning of the string till it encounters another character. The doc example makes it more clear:

ltrim('zzzytest', 'xyz') → test


The problem is when we do LTRIM for trimming the first four characters, it
trims the first five characters. but in the case of doing three characters,
it gives the correct output.

Both outputs are correct actually.


--
Guillaume.