我使用codeigniter來產生兩個表的左連接,但需要刪除活動記錄應用於表名的括號。你知道SELECT blah FROM ('some table')
我真的需要這些括號消失。Codeigniter Active Record:是否可以刪除表名
這裏是我的輸入數組:
$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
我一直在尋找這個有一段時間,所以你的幫助非常感謝。
我只是想指出,這個詞陣列在查詢字符串的末尾實際上是形成別的我正在回顯。 – Nich
爲什麼你不想在你的SQL字符串中使用括號?你想解決什麼問題? (這不會發生[XY問題](http://meta.stackexchange.com/questions/66377/what-is-the-xy-problem),是嗎?)這是一個100%有效的SQL查詢。 –
查詢有效嗎? – iGbanam