欢迎您访问我爱IT技术网,今天小编为你分享的编程技术是:【php对特殊语句查询结果进行数组排序】,下面是详细的分享!
php对特殊语句查询结果进行数组排序
数据库查询结果有时候不能直接使用,比如mysql等用in语句出来的结果,因此需要对结果进行某种方式的排序。
例子 4. 对数据库结果进行排序
本例中 data 数组中的每个单元表示一个表中的一行。这是典型的数据库记录的数据集合。
例子中的数据如下:
volume | edition
-------+--------
67 | 2
86 | 1
85 | 6
98 | 2
86 | 6
67 | 7
数据全都存放在名为 data 的数组中。这通常是通过循环从数据库取得的结果,例如 mysql_fetch_assoc()。
$data[]=array('volume'=> 67, 'edition'=> 2);
$data[]=array('volume'=> 86, 'edition'=> 1);
$data[]=array('volume'=> 85, 'edition'=> 6);
$data[]=array('volume'=> 98, 'edition'=> 2);
$data[]=array('volume'=> 86, 'edition'=> 6);
$data[]=array('volume'=> 67, 'edition'=> 7);
?>
http://sucai.knowsky.com/
本例中将把 volume 降序排列,把 edition 升序排列。
现在有了包含有行的数组,但是 array_multisort() 需要一个包含列的数组,因此用以下代码来取得列,然后排序。
// 取得列的列表
foreach ($data as $key=> $row) {
$volume[$key] =$row['volume'];
$edition[$key]=$row['edition'];
}
// 将数据根据 volume 降序排列,根据 edition 升序排列
// 把 $data 作为最后一个参数,以通用键排序
array_multisort($volume, SORT_DESC, $edition, SORT_ASC, $data);
?>
数据集合现在排好序了,结果如下:
volume | edition
-------+--------
98 | 2
86 | 1
86 | 6
85 | 6
67 | 2
67 | 7
以上所分享的是关于php对特殊语句查询结果进行数组排序,下面是编辑为你推荐的有价值的用户互动:
相关问题:php如何把多条查询结果放在数组中,
答:你不是sql语句里面用了limit 1 就是只输出一条记录 去掉limit 1 >>详细
相关问题:php 如何对数组进行排序 有没有简单的函数
答:这个排序是什么规律? php数组排序函数 http://www.w3school.com.cn/php/php_ref_array.asp 搜索 sort 关键字可以查看所有排序相关函数。 常用的排序函数有:sort、ksort、rsort、krsort >>详细
相关问题:php连接mysql数据库,执行查询语句后,排序后再输出
答:你的情况直接使用排序语句就可以 select id, type from news where order by id desc >>详细
- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
