0

我在表中有一个类型为 varchar 的字段,它们的值看起来类似于

  1. red-chief-men-245-brown-94581
  2. adidas-men-agora-93945
  3. 童鞋

在这种情况下,我只需要获取以连字符结尾的值,然后是整数 ex ("-94581" , "-93945") ..

mysql中有什么方法可以得到它

4

2 回答 2

2

使用RLIKE运算符代替LIKE. 这应该有效:

SELECT * FROM table WHERE foo RLIKE '.*-[[:digit:]]*$'
于 2012-05-22T12:24:00.323 回答
0

大概是这样的:

select  substr(searchfield,locate('_',searchfield)) as extractedfield from 
mytable where substr(searchfield,locate('_',searchfield)) > 0;
于 2012-05-22T12:28:44.717 回答