我正在尝试删除字符串的一部分。但是不能正确地做。 String就像这样:4,290TL〜9,490TL
因此尝试在此之后删除〜
我尝试过
UPDATE SET price = SUBSTRING_INDEX(price, '〜')
但是没有用。
答案 0 :(得分:2)
SUBSTRiNG_INDEX
需要3个参数,最后一个是定界符count
。在这种情况下,您需要提供count
为1的值,表示您希望所有内容都位于定界符〜
的 first 左边。此外,您需要在查询中指定表名。试试这个:
UPDATE yourtable SET price = SUBSTRING_INDEX(price, '〜', 1)
答案 1 :(得分:1)
请注意,您与此问题或评论共享的字符串使用不同的波浪线(“波浪号”)字符
# the tilde character used here is DIFFERENT to the next example
select substring_index('4,290TL〜9,490TL','〜',1)
;
+----+------------------------------------------------------+
| | substring_index('4,290TL〜9,490TL','〜',1) |
+----+------------------------------------------------------+
| 1 | 4,290TL |
# the tilde character is different to the one above
select substring_index('18,990万円(1戸)~28,790万円(1戸)','~',1)
;
+----+-----------------------------------------------------------+
| | substring_index('18,990万円(1戸)~28,790万円(1戸)','~',1) |
+----+-----------------------------------------------------------+
| 1 | 18,990万円(1戸) |
您需要确定用作定界符的代字号是在substring_index()
中使用的代字号,否则该函数将只返回整个字符串。
答案 2 :(得分:0)
UPDATE SET price = SUBSTRING_INDEX(price,'〜',1)