首页  >  文章  >  后端开发  >  又一个难题,数据有些联系,但不好做解决思路

又一个难题,数据有些联系,但不好做解决思路

WBOY
WBOY原创
2016-06-13 13:42:55883浏览

又一个难题,,数据有些联系,但不好做
还是查询

一张表有n个字段 ,其中主键id


然后php代码中有一个数组

$arr=array(
  array('id'=>'5','num'=>100),
  array('id'=>'11','num'=>99),
  array('id'=>'3','num'=>98),
......
)

也就是说$arr 这个数组根据num由大到小排列,,此时的id顺序是这样的,

然后要求是数据库查询集合要根据这个id排列的顺序,查找对应的集合,怎么做,,

看上去有点无规则,但好像又有点联系

------解决方案--------------------
是把id在数组里id的查出来吗??

如果是:把id组成一个array,然后sql id in (implode())
------解决方案--------------------
将数组导入临时表
与源表做关联查询,联接键 id,排序键 临时表.num
------解决方案--------------------
如果有数组 $arr=(3,2,1); 和 表 table,如下sql可以实现表table 按 $arr排序

SQL code
SELECT t.* FROM `table` t,(SELECT 3 AS id UNION SELECT 2 UNION SELECT 1) AS arr WHERE t.id=arr.id
<br><font color="#e78608">------解决方案--------------------</font><br>order by 可以实现根据你提供的数值来排序的,不过豸像效率不乍样
<br><font color="#e78608">------解决方案--------------------</font><br>这个最好是交给php来排。 <div class="clear">
                 
              
              
        
            </div>
声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn