You are here: Re: Looking for the right mysql syntax « PHP SQL « IT news, forums, messages
Re: Looking for the right mysql syntax

Posted by Chris on 09/30/37 11:58

Bob Stearns wrote:

> Chris wrote:
>
>> Hello,
>>
>> I have a table that contains the following records.
>>
>>
+-----+-----+-----------+---------------------------------+------------+----------+
>> | fid | nid | filename | filepath | filemime |
>> filesize |
>>
+-----+-----+-----------+---------------------------------+------------+----------+
>> | 1 | 1 | _original | images/IMG_3002.JPG | image/jpeg |
>> 1930295 |
>> | 2 | 1 | thumbnail | images/IMG_3002.thumbnail.JPG | image/jpeg |
>> 1854 |
>> | 3 | 1 | preview | images/IMG_3002.preview.JPG | image/jpeg |
>> 21818 |
>> | 4 | 2 | _original | images/IMG_3002_0.JPG | image/jpeg |
>> 1930295 |
>> | 5 | 2 | thumbnail | images/IMG_3002_0.thumbnail.JPG | image/jpeg |
>> 1854 |
>> | 6 | 2 | preview | images/IMG_3002_0.preview.JPG | image/jpeg |
>> 21818 |
>>
+-----+-----+-----------+---------------------------------+------------+----------+
>>
>> What I need to do, is change all the rows where the filepath column has a
>> value that contains the characters _0.
>>
>> I've selected these rows by doing:
>>
>> select * from files where filepath like '%_0.%';
>>
>> although I'm sure that there will be a better query to do the same.
>> However I have no idea how I could change the values for that column.
>>
>> SO what I need at the end is:
>>
>>
+-----+-----+-----------+---------------------------------+------------+----------+
>> | fid | nid | filename | filepath | filemime |
>> filesize |
>>
+-----+-----+-----------+---------------------------------+------------+----------+
>> | 1 | 1 | _original | images/IMG_3002.JPG | image/jpeg |
>> 1930295 |
>> | 2 | 1 | thumbnail | images/IMG_3002.thumbnail.JPG | image/jpeg |
>> 1854 |
>> | 3 | 1 | preview | images/IMG_3002.preview.JPG | image/jpeg |
>> 21818 |
>> | 4 | 2 | _original | images/IMG_3002.JPG | image/jpeg |
>> 1930295 | ^^^
>> | 5 | 2 | thumbnail | images/IMG_3002.thumbnail.JPG | image/jpeg |
>> 1854 | ^^^
>> | 6 | 2 | preview | images/IMG_3002.preview.JPG | image/jpeg |
>> 21818 | ^^^
>>
+-----+-----+-----------+---------------------------------+------------+----------+
>>
>>
>> Thanks,
>>
>> Chris
> I don't use MySQL, but in DB2 it would be as shown below. Untested.
>
> UPDATE files
> SET filepath=SUBSTR(filepath,1,POSSTR(filepath,'_O.')-1) ||
> SUBSTR(filepath,POSSTR(filepath,'_O.')+3)
> WHERE POSSTR(filepath,'_O.')>0
Thank you for pointing me in the right direction. It turns out that it can
be done in Mysql like this:

mysql> update files set filepath=replace(filepath,'_0','');

Thanks again,

Chris

 

Navigation:

[Reply to this message]


Удаленная работа для программистов  •  Как заработать на Google AdSense  •  England, UK  •  статьи на английском  •  PHP MySQL CMS Apache Oscommerce  •  Online Business Knowledge Base  •  DVD MP3 AVI MP4 players codecs conversion help
Home  •  Search  •  Site Map  •  Set as Homepage  •  Add to Favourites

Copyright © 2005-2006 Powered by Custom PHP Programming

Сайт изготовлен в Студии Валентина Петручека
изготовление и поддержка веб-сайтов, разработка программного обеспечения, поисковая оптимизация