如何从MySQL中的表格单元格中选择每个单词的第一个字母?

时间:2011-11-29 15:14:43

标签: mysql string-parsing

如何使用查询选择MySQL中每个单词的第一个字母?

所以这个表

+----+----------------------------+
| id | str                        |
+----+----------------------------+
|  1 | Hello my name is MCEmperor |
|  2 | How are you doing?         |
+----+----------------------------+

将返回

+----+----------------------------+
| id | str                        |
+----+----------------------------+
|  1 | HmniM                      |
|  2 | Hayd                       |
+----+----------------------------+

我想这是SUBSTRINGLOCATE的问题,也许我需要一个循环(找到所有空格或东西)......

在查询中是否可以?我该怎么做?

2 个答案:

答案 0 :(得分:1)

也许你可以简单地按空间划分?使用此存储过程:http://forums.mysql.com/read.php?60,78776,148332#msg-148332

然后,您可以检索每个单词的第一个字母,并在GROUP BY Id中使用GROUP_CONCAT将每个初始文本的字母放回一行。

答案 1 :(得分:1)

您正在寻找的是WHERE子句,它只匹配单元格中的部分数据。你可以这样做:

SELECT str 
from (table name) 
WHERE str LIKE 'H%'