1

codeigniter を使用して 2 つのテーブルの左結合を生成していますが、アクティブ レコードがテーブル名に適用される括弧を削除する必要があります。SELECT blah FROM ('some table')これらのブラケットが消えるには本当に必要です。

ここに私の入力配列があります:

$retrieve_arr = array(
    'table' => 'entries',
    'select' => array('entries.entry_id', 'entries.score', 'sc_users.name', 'clients.name'),
    'joins' => array(
        'clients' => 'entries.client_id = clients.client_id',
        'sc_users' => 'entries.sc_user_id = sc_users.sc_user_id'
    ),
    'joinType' => 'left',
    'where' => 'null'
    );

ここに私のモデルがあります:

$retrieve = new Data();
if($get_arr['select'] != 'null')
{
    $query = $retrieve->db->select($get_arr['select']);
}
foreach($get_arr['joins'] as $additional => $value)
{
    $retrieve->db->join($additional, $value, $get_arr['joinType']);
}
if($get_arr['where'] != 'null')
{
    foreach ($get_arr['where'] as $name => $value) 
    {
        $retrieve->db->where($name, $value);
    }
}
$query = $retrieve->db->get($get_arr['table']);
$queryData = $query->result_array();

return $queryData;

ここに私のクエリ文字列があります:

SELECT `entries`.`entry_id`, `entries`.`score`, `sc_users`.`name`, `clients`.`name` FROM (`entries`) LEFT JOIN `sc_users` ON `entries`.`sc_user_id` = `sc_users`.`sc_user_id` LEFT JOIN `clients` ON `sc_users`.`client_id` = `clients`.`client_id`Array

私はしばらくこれを探していたので、あなたの助けは非常に感謝しています.

4

1 に答える 1