2017-04-19 133 views
1

我有以下CI查詢生成查詢笨MySQL查詢陣列

$query_teams = $this->db->get_where('teams_in_cups', array('cup_id' => 2)); 
$team_ids=$query_teams->result_array(); 

$team_ids(目前輸出兩個ids-> 22和25)是用下面的查詢

$this->db->where_in('id', $team_ids);  
$query_team_details = $this->db->get('teams'); 
兼容

在第二個查詢中,$ team_ids應該看起來像下面的 數組(22,25);

我試過foreach,implode,爆炸,沒有如何設法讓它工作。

任何幫助,高度讚賞。

回答

1

您可以使用MySQL連接來獲得所需的結果。

我正在修復您目前的狀況。

$query_teams = $this->db->get_where('teams_in_cups', array('cup_id' => 2)); 
$team_data=$query_teams->result(); 
team_ids=''; 
foreach($team_data as $td) 
{ 
    $team_ids=$team_id.','.$td->team_id; 
} 
$team_ids=ltrim($team_ids,','); 
$this->db->where_in('id', $team_ids);  
$query_team_details = $this->db->get('teams'); 
+0

感謝您的快速回答,但'$ td-> team_id'返回未定義的變量錯誤。在MySQL中,列名是team_id,所以我不知道爲什麼會這樣? – Tibor

+0

使用您自己的數據庫表列名稱代替'team_id'。我剛剛舉了一個例子。 –

+0

在foreach裏面,變量$ team_id做什麼?因爲它沒有在任何地方定義。 – Tibor