【问题标题】:Codeigniter Active Record LimitCodeigniter 活动记录限制
【发布时间】:2014-06-25 05:16:20
【问题描述】:

我有以下代码正在运行,但我希望使用限制仅显示按 ID 排序的 10 个结果

$this->db->select('*');
        $this->db->from('quotes');
        $this->db->join('quotes_detail', 'quotes_detail.id_rfq = quotes.id_rfq');
        $this->db->join('clients', 'clients.id = quotes.id_company');
        $this->db->limit(10,1);

        $query = $this->db->get();
        $result = $query->result();
        return $result; 

使用限制代码行,不显示任何内容,但如果我删除该行,查询效果很好。

谁能帮我解决这个问题,谢谢。

【问题讨论】:

    标签: php codeigniter activerecord


    【解决方案1】:
    $this->db->limit(1,10);
    

    我认为你的查询确实

    SELECT ...... LIMIT 10,1;
    

    应该可以

    SELECT ...... LIMIT 1,10;
    

    【讨论】:

    • 不适用于$this->db->limit(1,10);,谢谢。
    • 请问您查询时可以查看数据库的内容吗?
    【解决方案2】:
    this->db->limit(10,1);
    

    第一个参数是一个限制。 第二个参数允许您设置结果偏移量。

    如果你想通过 id 获取东西,请使用:

    $this->db->where('id', $some_id);
    

    或者如果你有数组:

    $this->db->where_in('id', $some_ids_in_array);
    

    如果您想按 id 订购,请使用:

    $this->db->order_by('id', 'desc'); // or asc
    

    【讨论】:

      【解决方案3】:
      $this->db->limit(10);    // if you don't have offset
      $this->db->limit(10, 0);     // if you have offset value 
      

      【讨论】:

      • 添加一些上下文和格式化代码会有所帮助。
      猜你喜欢
      • 2012-11-23
      • 1970-01-01
      • 1970-01-01
      • 2014-02-22
      • 1970-01-01
      • 1970-01-01
      • 2014-10-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多