mysql中的子字符串索引分隔符

wdebmtf2  于 2021-06-21  发布在  Mysql
关注(0)|答案(1)|浏览(412)

我的清除列包含

||premiere|24,3,1999||type|movie||

mysql请求后

UPDATE post SET premiere = SUBSTRING_INDEX( SUBSTRING_INDEX( clear,'premiere|',-1 ),'||',1 )*1

首映礼变成24不明白为什么不是24,31999?

eit6fx6z

eit6fx6z1#

如果您跑步:

select SUBSTRING_INDEX(SUBSTRING_INDEX(clear, 'premiere|', -1 ), '||', 1 )
from (select '||premiere|24,3,1999||type|movie||' as clear) x

您将看到返回值是您所期望的(参见这里)。
问题在于 *1 . 它使用前导数字将值转换为数字。因此,你只能得到24。

相关问题