我希望有一个这样的mysql查询:
select <second word in text> word, count(*) from table group by word;
mysql中的所有正则表达式示例都用于查询文本是否与表达式匹配,而不是用于从表达式中提取文本。有这样的语法吗?
发布于 2012-09-07 19:51:26
提取句子中第二个单词的Shorter选项:
SELECT SUBSTRING_INDEX(SUBSTRING_INDEX('THIS IS A TEST', ' ', 2), ' ', -1) as FoundText
发布于 2010-10-26 16:02:28
根据http://dev.mysql.com/的说法,SUBSTRING函数使用起始位置,然后是长度,所以第二个单词的函数肯定是:
SUBSTRING(sentence,LOCATE(' ',sentence),(LOCATE(' ',LOCATE(' ',sentence))-LOCATE(' ',sentence)))
发布于 2010-10-26 15:30:35
不,没有使用正则表达式提取文本的语法。你必须使用普通的string manipulation functions。
或者,从数据库中选择整个值(如果担心数据传输太多,则选择前n个字符),然后在客户机上使用正则表达式。
https://stackoverflow.com/questions/4021507
复制相似问题