2009-05-28 140 views
1

嗨,使用MySQL刪除特定列中所有行的開始和結束斜槓最有效的方法是什麼?MySQL字符串替換

前:

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

後:

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

...也許這應該是在PHP做呢?

回答

3

TRIM()

UPDATE MY_TABLE SET my_field=TRIM(BOTH '/' FROM my_field); 
+0

完美,謝謝! – Matt 2009-05-28 02:48:36

1

你可以絕對使用MySQL string functions做這項工作,但我認爲這將是最好的使用PHP或任何您選擇的編程語言在數據庫之外處理。

1

你的PHP選項:(我假設提取行是$row

$row['Field'] = explode('/', $row['Field']); 
//Remove the empty elements 
$row['Field'] = array_filter($row['Field']); 
$row['Field'] = implode('/', $row['Field']); 
+0

不需要數組。 $ row ['Field'] = trim($ row ['Field'],'/');應該做的伎倆。 – raspi 2009-05-28 02:50:46