使用Kohana ORM按外表值排序

时间:2010-09-10 05:34:06

标签: mysql orm kohana kohana-3 kohana-orm

有没有办法通过使用外表中的值在ORM中排序(或排序)?

您可以执行以下操作:

ORM::factory("table")->order_by("table.foregin_table.column" , "ASC") 

或者你是否必须使用一些常规的MySQL并将这些表连在一起旧学校?

1 个答案:

答案 0 :(得分:6)

当然有可能。例如,我有两张表格,图片和投票的关系是一对多的。假设我想按照投票数对照片进行排序,以获得最受欢迎的照片。它会:

$pictures = ORM::factory('picture')
    ->select(array('COUNT("picture_votes.id")', 'votes'))
    ->join('picture_votes','left')
    ->on('picture_votes.picture_id','=','pictures.id')
    ->group_by('pictures.id')
    ->order_by('votes','desc')
    ->find_all();

这将根据结果以所选票数排序所有图片。