我正在尝试修改一个插件,其中包括按字母顺序对mysql数据库中的数组进行排序。相关PHP文件中执行排序的部分如下所示:
$select->order("$alias.name ASC");我希望继续按升序对项目进行排序,但希望将特定项目放在顶部(不按字母顺序排列)。
从信息here看,在MySQL中完成此操作的方法似乎很简单,只需:
ORDER BY name = 'Library' desc,
name asc;但是,即使研究了信息here,我也不能很好地将其转换为order()函数。我试过了:
$select->order("$alias.name ='Library' DESC","$alias.name ASC")但它似乎并不完全是这样工作的。
发布于 2016-02-19 03:24:22
好的,找到答案了-
我需要使用Zend_Db_Expr()。如果它对其他任何人有帮助,这是这样解决的:
$select->order(array(
new Zend_Db_Expr("$alias.name = 'Library' DESC"),
new Zend_Db_Expr("$alias.name ASC")
));https://stackoverflow.com/questions/35473612
复制相似问题