Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 科哈纳orm订单asc/desc?_Php_Sorting_Orm_Kohana - Fatal编程技术网

Php 科哈纳orm订单asc/desc?

Php 科哈纳orm订单asc/desc?,php,sorting,orm,kohana,Php,Sorting,Orm,Kohana,我注意到两个变量存储了表中的最大id和同一表中的最小id 第一个id很容易获取,使用find和类似的查询 $first = Model::factory('product')->sale($sale_id)->find(); 但我如何检索最后一个id?Kohana 3 ORM中是否有排序选项? 谢谢 这样做,我想你会: 选择表格中与您的条件相对应的所有行 将所有这些行从MySQL提取到PHP 最后,只处理其中一行 理想情况下,您应该执行使用MAX或MIN函数的SQ

我注意到两个变量存储了表中的最大id和同一表中的最小id

第一个id很容易获取,使用find和类似的查询

        $first = Model::factory('product')->sale($sale_id)->find();
但我如何检索最后一个id?Kohana 3 ORM中是否有排序选项?
谢谢

这样做,我想你会:

选择表格中与您的条件相对应的所有行 将所有这些行从MySQL提取到PHP 最后,只处理其中一行 理想情况下,您应该执行使用MAX或MIN函数的SQL查询-有点像这样:

select max(your_column) as max_value
from your_table
where ...
不知道如何使用Kohana,但看起来很有趣

是的,您可以在ORM中按$column$order按顺序对结果行进行排序。例如,->按“id”、“ASC”排序

使用QBuilder获取特定值:


实际上,问题可能是您在查找完所有内容后设置了order\u by。你应该把它放在前面。人们确实倾向于把它放在最后。 这样就行了

     $smthn = ORM::factory('smthn')
        ->where('something', '=', something)
        ->order_by('id', 'desc')
        ->find_all();

不要要求它仅仅为了获取id而检索行,只需从表中选择MAXid,MINid。我已经看过这个主题。我的想法是,我不想在SQL中“硬编码”查询,我想知道我是否可以只使用普通的kohana ORM来执行max select。但我认为这是不可能的。非常感谢。哦对不起,关于这一点,我帮不了你更多的忙:-
     $smthn = ORM::factory('smthn')
        ->where('something', '=', something)
        ->order_by('id', 'desc')
        ->find_all();