Re: using replace function

Поиск
Список
Период
Сортировка
От David G. Johnston
Тема Re: using replace function
Дата
Msg-id CAKFQuwbYHvu9J9Qb1CrqJ8gCPHxvH9vd7x6Yc=aZMx2Z66GD=g@mail.gmail.com
обсуждение исходный текст
Ответ на Re: using replace function  (Rob Sargent <robjsargent@gmail.com>)
Ответы Re: using replace function
Список pgsql-general
On Thursday, November 28, 2019, Rob Sargent <robjsargent@gmail.com> wrote:


> On Nov 28, 2019, at 1:09 PM, Antonio Silva <aolinto.lst@gmail.com> wrote:
>
> Hello list
>
> I want to replace a string (not a substring) in a field but making sure that the string in the full field.
>
> In the example below since 'blue' is not the full text in 'blue shark' there should not have a replacement.
>
> How to say "replace only with 'blue' if it is the full string in the field".
>
> With REPLACE I get:
>
> SELECT REPLACE('blue shark','blue','blue fish');
>      replace     
> -----------------
>  blue fish shark
> (1 row)
>
> but I would like to get:
>
> SELECT REPLACE('blue shark','blue','blue fish');
>   replace   
> ------------
>  blue shark
> (1 row)
>
> Thanks a lot
>
> Antonio Olinto

does this help?
select replace (a.col, ‘value’, ’new value’) where a.col = ‘value’;


I’d probably do something like:

Select case when a.col = ‘value’ then ‘new value’ else a.col end from a;

I suspect adding where a.col = ‘value’ isn’t viable.  If it is then:

Select ‘new value’ from a where a.col = ‘value’;

David J.

В списке pgsql-general по дате отправления:

Предыдущее
От: Rob Sargent
Дата:
Сообщение: Re: using replace function
Следующее
От: Tom Lane
Дата:
Сообщение: Re: using replace function