根据周围的特定字符去除 MySQL 中的字符串

问题描述

我有一列需要删除的值。所有字符串都具有相同的模式,如下所示:

Name
IIT | Cosmo (949446)
MIIT | World (949446)
HNTY | Name (576376)

我只需要抓取中间的值。我能够做到这一点:

SUBSTRING_INDEX(`Name`,'|',-1) as `New_Name`

这给了我Cosmo (949446)World (949446)Name (576376) 所需的输出为:CosmoWorldName

谢谢。

解决方法

您可以在输出上再使用一次 substring_index。

SELECT TRIM(SUBSTRING_INDEX(SUBSTRING_INDEX("IIT | Cosmo (949446)",'|',-1),'(',1))