sql截取字段最后以特定字符隔开的内容语句

字段images保存的数据是: a.jpg;b.jpg;c.jpg

要把images的最后一张图片c.jpg赋值到images_default

执行的SQL语句是

 代码如下 复制代码
UPDATE product SET `image_default` = REVERSE(MID(REVERSE(`images`),1,LOCATE(';',REVERSE(images))-1)) WHERE product_id > 1 

下面我们利用了几个函数,参考

REVERSE

REVERSE(str)
    返回颠倒字符顺序的字符串str。

 代码如下 复制代码
    mysql> select REVERSE('http://www.hzhuti.com/nokia/6220c/');
            -> 'cba'

    该函数对多字节可靠的。

MID

MID() 函数

MID 函数用于从文本字段中提取字符。
SQL MID() 语法

 代码如下 复制代码
SELECT MID(column_name,start[,length]) FROM table_name

LOCATE

LOCATE(substr,str) , LOCATE(substr,str,pos)
第一个语法返回字符串 str中子字符串substr的第一个出现位置。第二个语法返回字符串 str中子字符串substr的第一个出现位置, 起始位置在pos。如若substr 不在str中,则返回值为0

更多详细内容请查看:http://www.111cn.net/database/mysql/42395.htm

原文地址:https://www.cnblogs.com/phpfans2012/p/2452769.html