-1

我有以下mysql表

+----------------+--------------------+
|    ID          |      picture       |
+----------------+--------------------+
|     10954      | picture/mypics.jpg |
+----------------+--------------------+
|     10759      | picture/mypics2.jpg|
+----------------+--------------------+ 

我需要将现有文件名重命名为 ID,例如 mypics.jpg 重命名为 10954

我怎样才能做到这一点?

谢谢

4

1 回答 1

0
UPDATE `following mysql table`
SET picture = CONCAT (
  SUBSTR (picture, 0, CHAR_LENGTH(picture) - LOCATE('/', REVERSE(picture)),
  '/',
  ID
)

这会将最后一个斜杠之后的部分替换为ID列中的值。据我所知,MySQL 没有查找字符串中最后出现的子字符串的功能,因此有趣的结构是CHAR_LENGTH,LOCATEREVERSE.

有关详细信息,请参阅MySQL 字符串函数

于 2013-07-28T08:16:55.947 回答