0

私はこのコードを試します

function catstore($id)
    {   
        $this->db->distinct();
        $this->db->select('store_id');
        $this->db->from('products');
        //$this->db->join('products','products.store_id = products.store_id');
        $this->db->where('cat_id', $id);
        $result = $this->db->get();
        return $result->result();       
    }

個別のstore_idのみを生成しますが、store_idに基づいた個別の行を持つテーブルのすべての列が必要です

オプションを提案してください

前もって感謝します

4

2 に答える 2

3

group_by を使用して試すことができます

function catstore($id)
{   
    $this->db->select('*');
    $this->db->from('products');
    //$this->db->join('products','products.store_id = products.store_id');
    $this->db->where('cat_id', $id);
    $this->db->group_by('store_id');
    $result = $this->db->get();
    return $result->result();       
}

この質問はもうずっと前のものであることは知っていますが、私のような同じ問題を探している人がいるかもしれません。これが私が解決した方法です。

于 2016-09-15T03:46:51.453 に答える
0

select関数を完全に省略できます。テーブルからすべて (*) を選択する場合は、この関数を使用する必要はありません。省略した場合、CodeIgniter は、SELECT *

http://codeigniter.com/user_guide/database/active_record.html#selectを参照してください

または..

コンマ区切りの値をselect関数に渡すことができます。したがって、選択するすべての列名をカンマで区切って渡します

function catstore($id)
    {   
        $this->db->distinct();
        $this->db->select('store_id, column1, column2, cloumn3');
        $this->db->from('products');
        //$this->db->join('products','products.store_id = products.store_id');
        $this->db->where('cat_id', $id);
        $result = $this->db->get();
        return $result->result();       
    }
于 2012-08-09T09:48:06.450 に答える