PHP / MySQL - 从特定行开始排序数据

时间:2013-10-30 07:55:53

标签: php mysql

我有类似数据的MySQL表

France  - 1
Germany - 2
Italy   - 3
France  - 5
Germany - 3
France  - 2

我想选择所有内容(这很容易SELECT * FROM table),但我希望按照法国总是第一的方式对数据进行排序,因此结果应该是:

France  - 1
France  - 5
France  - 2
Germany - 2
Germany - 3
Italy   - 3

这可以在MySQL方面完成,还是应该在foreach语句中完成?

谢谢。

2 个答案:

答案 0 :(得分:3)

要么

select * from your_table
order by country <> 'France',
         country

select * from your_table
order by case when country = 'France'
              then 1
              else 2
         end,
         country

答案 1 :(得分:0)

你也可以通过

来做到这一点
$result=mysql_query("select * from   
   countrydata order by country ASC");
while($row=mysql_fetch_row($result)){
    $id=$row[0];
    $name=$row[1];
    echo $name."&nbsp;".$id."<br>";
}