我有一个产品描述栏。我想用regexp搜索这个列,只返回regexp中的匹配项,而不是列的完整内容。
i、 我有一个描述
这颗华丽的珠子非常讲究细节
以及
这个手镯有一个磁性的盖子
SELECT description FROM products WHERE description RLIKE"'magn.*\s"
这应该会返回到壮观和磁性
SELECT description FROM products WHERE description RLIKE"'magni.*\s"
这应该会很好
当然,当前的查询返回完整的描述。任何我能做的事。MySQL5.5版本
2条答案
按热度按时间sd2nnvve1#
如果您使用的是mysql版本8.0,那么可以使用regexp\u substr()实现此目的。此功能在早期版本中不可用。
https://dev.mysql.com/doc/refman/8.0/en/regexp.html#function_regexp-子字符串
更新
这里的另一个裂缝,它应该是5.5友好。假设提供的正则表达式位于所需匹配的开头。
还有一个8.0版本的工作示例,供那些投票支持我之前工作的人使用
e0bqpujr2#