Mysql如何按名字的第一个字母和姓氏的第一个字母排序

时间:2014-11-30 20:02:21

标签: mysql sql

我有一个名字像Anders Mansen,Andreas Burne这样的名单。 当我按firstname, lastname订购时,它会显示如下:

Anders Mansen
Andreas Burne

我怎样才能进行搜索,这样它就会取名字中的第一个字母,最后一个字母,所以列表将是这样的

Andreas Burne
Anders Mansen

希望有人可以提供帮助:-D

安德烈亚斯

2 个答案:

答案 0 :(得分:1)

这可以做你想要的:

select * from your_table order by left(firstname,1), left(lastname,1)

虽然我认为按lastname, firstname排序可能更有意义,因为对firstname和lastname中的单个字符进行排序会给具有相同首字母但其余部分不同的名称带来相当不可预测的结果:

select * from your_table order by lastname, firstname;

答案 1 :(得分:0)

select firstname,lastname
from tablename
order by left(firstname,1), left(lastname,1)

根据表的大小及其索引方式,这可能是一个缓慢的排序

此外,除了姓名缩写之外,其他任何事情都没有决定权,因此无法确定“Anders Burne”和“Anders Black”会出现在哪个顺序。

希望这有帮助。