views:

840

answers:

3

Hey, what's the most effective way to remove beginning and ending slashes from all rows in a particular column using MySQL?

Before:

/hello/world/
foo/bar/
/something/else
/one/more/*

After:

hello/world
foo/bar
something/else
one/more/*

...or maybe this should be done in PHP instead?

+1  A: 

You could definitelyt make this work using the MySQL string functions but I think this would be best handled outside of the database using PHP or whatever programming language of your choice.

Andrew Hare
+3  A: 

See TRIM()

UPDATE MY_TABLE SET my_field=TRIM(BOTH '/' FROM my_field);
raspi
Perfect, thanks!
Matt
+1  A: 

Your PHP option: (I'm assuming the fetched row is in $row)

$row['Field'] = explode('/', $row['Field']);
//Remove the empty elements
$row['Field'] = array_filter($row['Field']);
$row['Field'] = implode('/', $row['Field']);
Jrgns
No need for array. $row['Field'] = trim($row['Field'], '/'); should do the trick.
raspi