| From: | Jason Earl <jason(dot)earl(at)simplot(dot)com> |
|---|---|
| To: | "cristi" <cristi(at)dmhi(dot)ct(dot)ro> |
| Cc: | <pgsql-novice(at)postgresql(dot)org> |
| Subject: | Re: update |
| Date: | 2002-02-26 19:07:24 |
| Message-ID: | 87sn7onjtf.fsf@npa01zz001.simplot.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-novice |
This looks like it does what you want...
processdata=> select version();
version
---------------------------------------------------------------
PostgreSQL 7.1.3 on i686-pc-linux-gnu, compiled by GCC 2.95.4
(1 row)
processdata=> update my_table set codlm = ('22' || substring(codlm, 3)) where codlm like '45%';
UPDATE 3
processdata=> SELECT * FROM my_table;
codlm
---------
440331B
440332C
440222X
22122AD
22122AD
22123AC
(6 rows)
Jason
"cristi" <cristi(at)dmhi(dot)ct(dot)ro> writes:
> I have a table (my_table) with this structure:
>
> codlm varchar(7)
>
>
>
> The records are:
>
> 45122AD
> 45122AD
> 45123AC
> 440331B
> 430332C
> 440222X
>
> I want to change the first 2 letters from 45 to 22 something like this:
>
>
>
> 22122AD
> 22122AD
> 22123AC
> 440331B
> 430332C
> 440222X
>
> I tried:
>
> update my_table set codlm='22'||substring(codlm,2) where codlm like '45'
>
>
>
> but the result is:
>
>
> 225
> 225
> 225
> 440331B
> 430332C
> 440222X
>
> Where is the mistake?
>
>
>
> Thanks!
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Art Nicewick | 2002-02-26 20:05:07 | Re: connectDBStart() -- connect failed |
| Previous Message | Phil Mitchell | 2002-02-26 18:32:35 | Help formulating multi-table SELECT statement |