我有类似数据的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语句中完成?
谢谢。
答案 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." ".$id."<br>";
}