2017-05-25 92 views
-1

我有一个数据库,办公室用户通过在管理标题字段前添加一个类别来创建“poo人的分类”。例如,你有一个像Mysql在标点符号上拆分字符串

Applications - When to Apply 
Applications- Fees 
Admission: GPA requirements 
Admissions: Bursar 

我们正在增加一个类别栏记录,我想(尽可能接近)的所有独特的用户创建的类的标题字段。从上面的示例中,Applications,AdmissionAdmissions已经足够。

如何编写查询以返回字段的第一部分,并将其分割为第一个非字母数字字符?

回答

1

AFAIK,这对任何内置的MySQL函数都是不可能的。搜索字符串不能找到一个字符集外的字符,例如第一个非字母数字字符。

通过循环字符串并调用SUBSTR(),可以编写一个可执行的存储函数。但是你最好在网上搜索一个可以使用正则表达式分割字符串的用户定义函数。

+1

MariaDB 10.0.5 REGEXP_REPLACE(),REGEXP_INSTR()和REGEXP_SUBSTR() –

+0

@RickJames很高兴知道,但问题是关于MySQL,而不是MariaDB。 – Barmar