使用 Kohana ORM 按外部表值排序

发布于 2024-09-18 16:54:25 字数 192 浏览 5 评论 0原文

有没有办法使用外部表中的值在 ORM 中进行排序(或排序)?

你能做如下的事情吗:

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

或者你必须使用一些常规的MySQL并将表连接在一起吗?

Is there any way to sort (or order by) in ORM by using a value from a foreign table?

Can you do something like the following:

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

Or do you have to use some regular MySQL and join the tables together old school?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

浅忆流年 2024-09-25 16:54:25

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

$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();

这将给出按票数排序的所有图片作为结果。

Of course it's possible. For example I have two tables with pictures and votes with relation one to many. Let's say I want to sort pictures by number of votes to get the most popular pictures. It will this:

$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();

This will give all pictures sorted by number of votes as result.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文