我有一张有全名栏的桌子。我想得到唯一的名字或名字排序多少次,他们发生。

fullname
-----------
Barack Hussein Obama
Michael Jackson
William Jefferson Blythe
Michael Bloomberg

所以输出将是
Barack Hussein Obama
William Jefferson Blythe

或者
Barack Hussein Obama
William Jefferson Blythe
Michael Jackson
Michael Bloomberg

或者
1|Barack
1|William
2|Michael

差不多吧。我的目标是在我的数据库中看到外国学生。我只能猜测他们的全名。

最佳答案

您可以使用SUBSTRING_INDEX(fullname,' ',1)根据您的定义提取“给定名称”。
然后,您可以根据自己的需要使用它进行分组或排序,例如。

SELECT COUNT(*),SUBSTRING_INDEX(fullname,' ',1) AS givenname
 FROM yourtable
 GROUP BY givenname;

10-05 21:01