温馨提示×

如何通过charindex实现MySQL字符串匹配

小樊
87
2024-09-16 02:49:52
栏目: 云计算
亿速云mysql数据库,读写分离,安全稳定,弹性扩容,低至0.3元/天!! 点击查看>>

在 MySQL 中,可以使用 LOCATE() 函数来实现类似于 SQL Server 中 CHARINDEX() 的功能

LOCATE(substr, str) 函数返回子字符串 substr 在字符串 str 中首次出现的位置。如果未找到子字符串,则返回 0。

以下是一个示例:

SELECT LOCATE('world', 'Hello, world!'); -- 返回 8

此查询将返回值 8,因为子字符串 “world” 在字符串 “Hello, world!” 中首次出现的位置是从第 8 个字符开始的。

请注意,位置索引从 1 开始,而不是从 0 开始。

如果要实现类似于 SQL Server 中 CHARINDEX(substr, str, start_position) 的功能,可以使用 LOCATE(substr, str, start_position) 函数。例如:

SELECT LOCATE('world', 'Hello, world, welcome to the world!', 9); -- 返回 27

此查询将返回值 27,因为子字符串 “world” 在字符串 “Hello, world, welcome to the world!” 中第二次出现的位置是从第 27 个字符开始的。

亿速云「云数据库 MySQL」免部署即开即用,比自行安装部署数据库高出1倍以上的性能,双节点冗余防止单节点故障,数据自动定期备份随时恢复。点击查看>>

推荐阅读:hive字符串怎样实现模糊匹配

0