mySQL排序字段由两个条件

时间:2015-08-03 03:09:29

标签: php mysql

由于主办方非常奇怪的惯例,我有这样的API拉取数据:

[car0]
[car0]
[car1]
[car2]
[car]

如果我在我的数据库和order by name asc

上执行sql检索

我得到了

[car]
[car0]
[car0]
[car1]
[car2]

我需要列的顺序完全相同。

有没有办法让我先按字符串长度排序,然后按名称asc排序,这样从mysql检索的数据看起来就像来自URL的数据:

1 个答案:

答案 0 :(得分:2)

试试这种方式

order by CASE SUBSTRING(name, 4)
  WHEN '' THEN -1
  else SUBSTRING(name, 4) end asc