【问题标题】:How to add pagination to union tables in codeigniter如何在codeigniter中向联合表添加分页
【发布时间】:2014-09-16 11:06:18
【问题描述】:

unionTable如何添加分页功能?

通常我会这样做:

    $query = $this->db->get('tutorial', $num, $offset);

但是我不知道怎么做这里帮助。

    $query = $this->db->query("SELECT * FROM
             ($subQuery1 UNION $subQuery2 UNION $subQuery3)
             AS unionTable GROUP BY date DESC");

【问题讨论】:

    标签: php mysql codeigniter pagination union


    【解决方案1】:

    如果您使用的是 Mysql,请尝试以下代码:

    $query = $this->db->query("SELECT * FROM
             ($subQuery1 UNION $subQuery2 UNION $subQuery3)
             AS unionTable GROUP BY date DESC LIMIT $num, $offset");
    

    注意:请确保您在查询之前为变量 $num 和 $offset 设置了正确的值。

    【讨论】:

      【解决方案2】:

      好的,所以您使用 query 而不是 get,除了之前计算的添加 $num 和 $offset 的 600Mhz 答案之外,您还必须从活动记录中检索值查询,因此,您必须执行查询:

      $query = $this->db->query("SELECT * FROM
               ($subQuery1 UNION $subQuery2 UNION $subQuery3)
               AS unionTable GROUP BY date DESC LIMIT $num, $offset")
               ->result();
      

      这样,它将模拟 get 函数,$query 将拥有您通常使用 get 检索的对象数组。如果您已经知道,请接受 600MHz 的答案,因为它首先回答,XD

      【讨论】:

      • 是的,你是对的,使用查询需要调用 result() 来获取由行数据对象填充的数据数组。 result_array() 将返回包含相关行值数组的数据数组。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-09-19
      • 1970-01-01
      • 1970-01-01
      • 2016-12-25
      • 1970-01-01
      • 2014-05-10
      • 1970-01-01
      相关资源
      最近更新 更多