Magento使用Order By加载集合

Magento使用Order By加载集合,magento,Magento,我的查询是从magento集合生成的 $userModel = Mage::getSingleton('user/user')->getCollection()->addFieldToFilter('user_id', array('in' => array($User_Id))); SELECT `main_table`.user_name FROM `user_table` AS `main_table` WHERE (user_id IN('1', '3', '2'))

我的查询是从magento集合生成的

$userModel = Mage::getSingleton('user/user')->getCollection()->addFieldToFilter('user_id', array('in' => array($User_Id)));

SELECT `main_table`.user_name FROM `user_table` AS `main_table` WHERE (user_id IN('1', '3', '2'));
我要使用此查询:

SELECT `main_table`.user_name FROM `user_table` AS `main_table` WHERE (user_id IN('1', '3', '2')) ORDER BY FIELD(user_id , 1,3,2);
这样,它将以与输入ID相同的顺序显示用户名。 i、 e.“1、3、2”

在Magento中,使用
按顺序加载集合的方法是什么


提前谢谢

您可以从
Collection
获取
Zend\u Db\u Select
,然后向
Zend\u Db\u Select
添加订单,如以下问题所示:


此外,如果Magento集合中不可能使用“Order By”,那么如果有多个集合要加载并根据自定义要求修改它们,是否建议编写我们自己的自定义查询?可能重复:@SeanReeden函数setOrder($attribute,$dir='desc')使用ASC或DESC参数,而我讨论的是我的sql函数,它是按字段()排序的。那么,是否可以使用上面的mysql函数根据自定义需要使用Magento Collection按数据排序?使用上面的代码和使用Magento自定义查询代码会有什么区别?如何在magento中使用fetch()方法执行多条记录?