PHP实现结果集的另类排序

前天去面试的时候,给我出了一个问题:使用PHP将结果集进行排序,首先输出ID最大的值,然后输出ID最小的值;再输入剩余结果集中ID最大的值,接着输出剩余结果集中ID最小的值,以此类推,一直循环下去。

说实话,当时确实把我难住了,一直以为用一句SQL语句就可以实现这个功能,但我确实不知道什么样的SQL语句可以实现这样的排序方法,我只知道升序和降序两种排序。不由觉的自己了解的太少,只是会一些基本的应用,一些很别调的要求就无法完成了。

当然,这就说明自己的水平还很次,还要努力学习!

这个问题没解决,心里实有些不甘心。于是晚上回到家后便开始琢磨起来:什么样的SQL语句才可以实现这种排序呢?无奈,只好请教芽雨兄了,芽雨给我的答案很明确:SQL几乎不可能实现,要使用数组来进行操作。接下来我便一些写代码测试,一边想解决方法,一边上网查找PHP对数组操作的函数。

执行结果如下:

结果按ID升序排序

结果集的另类排序

终于算是完美的解决了,但不知道是否还有更简单的办法来实现?

PHP实现结果集的另类排序》上有 2 条评论

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">