我正在尝试创建一个选择字段,该字段显示所有国家,但将英国、美国、CA、新西兰和AU放在顶部,然后将其余国家按字母顺序放在下面!我不确定如何解决这个问题,已经搜索了StackOverflow,但还没有找到解决方案。
public function getCountries()
{
$results = $this->db->select('msi_countries','status = 1 ORDER BY sorting DESC');
return $results;
}
我的数据库表如下:
id | cc | name | status | sorting
------------------------------
1 | ?? | afff | 1 | 0
2 | ?? | vccc | 1 | 0
....
....
121 | AU | Australia | 1 | 1
122 | NZ | New Zealand | 1 | 2
etc.
然后我尝试按DESC排序,并认为它会再次返回到第一个国家,但没有成功,所以我想知道如何完成这项任务,我把排名靠前的国家放在首位,然后其他国家在下面!:
country
country
country
country
-----------------
rest of countries
感谢
我不确定我是否理解你的问题,但如果你想先显示最大的sorting
国家,然后显示零的国家(这些国家按名称排序(,那么查询应该看起来像:
select *
from msi_countries
order by sorting desc, name
这是你想要的吗?