我的CLEAR栏包含
||premiere|24,3,1999||type|movie||
mysql请求后
UPDATE post SET premiere = SUBSTRING_INDEX( SUBSTRING_INDEX( clear,'premiere|',-1 ),'||',1 )*1
PREMIERE成为24
不明白为什么不1999年3月24日?
最佳答案
如果您运行:
select SUBSTRING_INDEX(SUBSTRING_INDEX(clear, 'premiere|', -1 ), '||', 1 )
from (select '||premiere|24,3,1999||type|movie||' as clear) x
您将看到返回值是您期望的值(请参见here)。
问题是
*1
。通过使用前导数字,它将值转换为数字。因此,您只能得到24。关于mysql - Mysql中的Substring_index分隔符,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52367231/