这应该很简单,但我迷失在细节....
在数据库字段中,如果字符串包含单词'century',我想要前一个单词,例如:"16"
我一直在尝试使用定位和反向功能,但不能使它工作。有人能帮忙吗?
谢谢!
你可以试试:
使用substring_index返回'century'之前的字符串。
使用reverse反转字符串。
使用substring_index返回第一个空格之前的字符串(可能需要修剪它?)。
使用reverse再次反转字符串。
Mysql> select substring_index('what century now', 'century', 1);+---------------------------------------------------+| substring_index('现在是哪个世纪','世纪',1)|+---------------------------------------------------+|什么|+---------------------------------------------------+1行(0.00秒)Mysql> select substring_index('what centuries now', 'century', 1);+-----------------------------------------------------+| substring_index('what centuries now', 'century', 1) |+-----------------------------------------------------+几个世纪过去了+-----------------------------------------------------+1行(0.00秒)Mysql> select substring_index('what century now century', 'century', 1);+-----------------------------------------------------------+| substring_index('what century now century', 'century', 1) |+-----------------------------------------------------------+|什么|+-----------------------------------------------------------+1行(0.00秒)