是否可以在子字符串函数中使用字符而不是位置?
SELECT SUBSTRING(title,2) FROM table
从第二个位置开始推出每个冠军。
现在我想在空格后剪切输出。空间位置各不相同。 这是可以实现的吗?
我试过了......比如
SUBSTRING(title,2,LOCATE('',title))
,但由于某种原因,输出为空。
提前谢谢你。 Soloco
答案 0 :(得分:1)
您可以使用SUBSTRING_INDEX
:
SELECT SUBSTRING_INDEX(title, ' ', 1) FROM table
SELECT SUBSTRING_INDEX('hello world', ' ', 1) # gives you 'hello'
答案 1 :(得分:0)
在您的LOCATE语句中,您正在搜索空字符串''
而不是空格' '
添加空格字符。
您正在做的是将字符串从其第二个字符提取到第一个出现的空格字符。这真的是你想要做的吗?如果第一个或第二个字符是空格字符怎么办?
答案 2 :(得分:0)
您可以使用:
SUBSTRING(title,2,charindex('',title)-1)
这会在标题
中的空格之前剪切字符串