首页 >数据库 >mysql教程 >如何使用字符串函数从 MySQL 字符串中提取第二个单词?

如何使用字符串函数从 MySQL 字符串中提取第二个单词?

Barbara Streisand
Barbara Streisand原创
2024-11-30 19:33:20898浏览

How to Extract the Second Word from a MySQL String Using String Functions?

提取单词并统计 MySQL 字符串中的出现次数

问题:

您正在寻找一个 MySQL查询类似于以下:

select <second word in text> word, count(*) from table group by word;

MySQL 中是否有使用正则表达式从表达式中提取文本的语法?

答案:

提取正则表达式匹配时默认 MySQL 功能不支持直接直接操作,正如 mc0e 提到的,有一个解决方案可以使用字符串的组合来提取字符串中的特定单词函数:

SUBSTRING(
  sentence,
  LOCATE(' ', sentence) + CHAR_LENGTH(' '),
  LOCATE(' ', sentence,
  ( LOCATE(' ', sentence) + 1 ) - ( LOCATE(' ', sentence) + CHAR_LENGTH(' ') )
)

用法:

要从字符串中提取第二个单词,您可以使用以下查询:

SELECT SUBSTRING(
  sentence,
  LOCATE(' ', sentence) + CHAR_LENGTH(' '),
  LOCATE(' ', sentence,
  ( LOCATE(' ', sentence) + 1 ) - ( LOCATE(' ', sentence) + CHAR_LENGTH(' ') )
) as string
FROM (SELECT 'THIS IS A TEST' AS sentence) temp

这将返回单词“IS”作为输出。

注意:

如果经常需要提取正则表达式匹配项,请考虑在客户端上对结果进行后处理或安装支持正则表达式提取的 MySQL 扩展。

以上是如何使用字符串函数从 MySQL 字符串中提取第二个单词?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn