MySQL - 如果字符超过一定数量,如何从字符串中删除字符?

时间:2015-01-27 13:02:54

标签: mysql database

如果字符串长度超过6个字符,如何从元键rapportnummer中删除所有尾随字符。

如果我的字符串为12345678,我希望它自动删除78

之前我使用此简短查询从同一字段中删除每个/

UPDATE wp_postmeta SET meta_value = replace(meta_value, '/', '') WHERE meta_key = 'rapportnummer';

我问的是可以在MySQL中实现的吗?

3 个答案:

答案 0 :(得分:0)

Google https://www.google.co.uk/search?q=MySQL+-+How+can+I+remove+characters+from+string+if+it%27s+longer+than+a+certain+amount&ie=utf-8&oe=utf-8&gws_rd=cr&ei=rI3HVK5Ry_VQr_2CyAs,答案就在这篇文章的下方,在Google上。

这里: http://dev.mysql.com/doc/refman/5.0/en/string-functions.html#function_left

从此:

LEFT(str,len)
  

返回字符串str中最左边的len个字符,如果任何参数为NULL,则返回NULL。

     

的MySQL> SELECT LEFT('foobarbar',5);            - > 'fooba'

     

此功能是多字节安全的。

答案 1 :(得分:0)

无论字符串的长度如何,您都可以使用SUBSTR

UPDATE wp_postmeta SET meta_value = SUBSTR(meta_value,1,6) WHERE meta_key = 'rapportnummer';

答案 2 :(得分:0)

试试这个:

UPDATE wep_postmeta
SET meta_value = LEFT(meta_value,6)
WHERE CHAR_LENGTH(meta_value)>6