将mysql数据库字段拆分为2部分

时间:2016-07-25 11:05:01

标签: mysql

我正在单个字段中保存完整的文件路径,现在我要将其拆分。 bellow是我当前的数据库文件路径。 当前字段名称为" video_thumb"

../files/thumbs/2014-Oct/1413648778-sm.jpg 

现在我想把它分成2个字段 一个字段中的文件夹路径 我想将以下内容拆分为" thumb_path"

../files/thumbs/2014-Oct/

另一个字段中的文件名" file_name"

1413648778-sm.jpg 

2 个答案:

答案 0 :(得分:0)

SET @STR = '../files/thumbs/2014-Oct/1413648778-sm.jpg';

SELECT  @STR,
            REVERSE(@STR) AS REVERSESTR,
            REVERSE(SUBSTRING(REVERSE(@STR),1,INSTR(REVERSE(@STR),'/') - 1)) FILENAME,
            REPLACE
            (@STR,
            REVERSE(SUBSTRING(REVERSE(@STR),1,INSTR(REVERSE(@STR),'/')  -1))
            ,''
            ) AS THUMB;

我已经完成了所有步骤以说明解决方案

答案 1 :(得分:0)

尝试使用以下查询:

select '/files/thumbs/2014-Oct/1413648778-sm.jpg' path_and_filename,
       replace('/files/thumbs/2014-Oct/1413648778-sm.jpg', substring_index('/files/thumbs/2014-Oct/1413648778-sm.jpg', '/', -1), '') path,
       substring_index('/files/thumbs/2014-Oct/1413648778-sm.jpg', '/', -1) filename
from myTable

您将有3个字段:

  1. path_and_filename:原始数据
  2. 路径:仅路径字符串
  3. filename:仅文件名字符串
  4. XAV