MYSQL 使用多个分隔符从列结果中提取数据

问题描述 投票:0回答:1

我在mysql的一列中有一个字符串,如下:

761696495 - 689552180|723146573 - 684706476|295453556 - 656883782

有没有一种方法可以检查该字符串,例如,假设我想查找

723146573
684706476
,这是分隔管道字符串中的中间项,我希望能够返回如果匹配的话,该字符串的整个部分。例如,如果我想检查
684706476
,它将返回:

723146573 - 684706476

相反,如果我想匹配

723146573
,它也会返回该位置的完整匹配

723146573 - 684706476

另外,为了不造成任何混淆,本质上我希望能够匹配整个字符串的任何位置,如果命中,它会返回

-
的第一部分,并在该位置找到最后一个部分,希望这是有道理的。

mysql
1个回答
0
投票

尝试一下! 如果你只使用 MySQL,也许下面的查询会有所帮助。 SELECT SUBSTRING_INDEX(SUBSTRING_INDEX(column_name, '|',position), '|', -1) AS match FROM table_name WHERE LOCATE('684706476', column_name) > 0;

© www.soinside.com 2019 - 2024. All rights reserved.